Quantcast
Channel: WampServer - WampServer Francais
Viewing all articles
Browse latest Browse all 3472

[Amélioration] - Pas de dll extension PHP ou pas d'appel (Pas de réponses)

$
0
0
Bonjour,

Rien n'indique qu'un fichier php5.5.x/ext/php_extension_x.dll n'existe pas alors qu'une ligne ;extension=php_extension_x.dll est présente dans le fichier php.ini tout comme rien n'indique d'un fichier php5.5.x/ext/php_extension_y.dll existe alors qu'il n'y a aucune ligne afférente dans le fichier php.ini.
Ceci parce que la procédure // on croise les deux tableaux ne « croise » pas réellement les deux tableaux : celui des fichiers d'extensions et celui des lignes extension de php.ini.

Pour corriger ce problème, on va modifier le fichier wamp/scripts/refresh.php.
Remplacer :
// on croise les deux tableaux
foreach ($extDirContents as $extname)
{
    if (!array_key_exists($extname,$ext))
    {
        $ext[$extname] = '0';
    }
}

ksort($ext);



//on construit le menu correspondant
$extText = ';WAMPPHP_EXTSTART
';
foreach ($ext as $extname=>$extstatus)
{
    if ($ext[$extname] == 1)
        $extText .= 'Type: item; Caption: "'.$extname.'"; Glyph: 13; Action: multi; Actions: php_ext_'.$extname.'
';
    else
        $extText .= 'Type: item; Caption: "'.$extname.'"; Action: multi; Actions: php_ext_'.$extname.'
';

}
par
// on croise les deux tableaux
foreach ($extDirContents as $extname)
{
    if (!array_key_exists($extname,$ext))
    	$ext[$extname] = -1; //[modif oto] - dll file exists but not extension line in php.ini
}
foreach ($ext as $extname=>$value)
{
    if (!in_array($extname,$extDirContents))
    	$ext[$extname] = -2; //[modif oto] - extension line in php.ini but not dll file
}

ksort($ext);

//on construit le menu correspondant
$extText = ';WAMPPHP_EXTSTART
';
foreach ($ext as $extname=>$extstatus)
{
    if ($ext[$extname] == 1)
        $extText .= 'Type: item; Caption: "'.$extname.'"; Glyph: 13; Action: multi; Actions: php_ext_'.$extname.'
';
    elseif($ext[$extname] == -1)
    {
   			//[modif oto] - Warning icon to indicate problem with this extension: No extension line in php.ini
        $extText .= 'Type: item; Caption: "'.$extname.'"; Action: multi; Actions: php_ext_'.$extname.' ; Glyph: 19;  
';
		}
    elseif($ext[$extname] == -2)
    {
   			//[modif oto] - Square red icon to indicate problem with this extension: no dll file in ext directory
        $extText .= 'Type: item; Caption: "'.$extname.'"; Action: multi; Actions: php_ext_'.$extname.' ; Glyph: 11;  
';
		}
    else
    {
        $extText .= 'Type: item; Caption: "'.$extname.'"; Action: multi; Actions: php_ext_'.$extname.'
';
		}
}

Maintenant (Après un Refresh), le menu Wampserver, PHP, Extensions PHP indiquera les problèmes par une icone devant les noms des extensions :
- Un carré rouge pour les extensions du fichier php.ini sans fichier dll associé
- Un trianle Attention pour les fichier dll sans ligne extension= dans le fichier php.ini

Nota : Je vais vérifier également pour les modules Apache.

Viewing all articles
Browse latest Browse all 3472

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>