par
AB » 25 juil. 2010, 17:20
ça marche parce que $_SERVER['REQUEST_URI'] renvoie un slashe en première position (ex : /administrator.php), donc la chaine "administrator" ne peut pas être trouvée en première position (numéro 0) mais au minimum en deuxième position (soit le numéro 1). Mais la remarque de
Ryle est quand même intéressante car ton code n'est pas "très satisfaisant pour l'esprit" puisque la fonction renverra 0 si le terme à rechercher est trouvé en position 0 ou s'il n'est pas trouvé du tout (puisque tu fais : if ($pos === false){$pos = 0;}return $pos;).
Tu pourrais faire une fonction plus générique et facile à comprendre en faisant par exemple :
function isAdmmin($chaine = 'administrator')
{
if (strpos($_SERVER['REQUEST_URI'],$chaine) !== false) return true; else return false;
}
Enfin bon, c'est juste pour causer... Concernant ta boucle infinie, c'est peut-être la condition de ta boucle qui interfère avec le code retourné par ta fonction...
ça marche parce que $_SERVER['REQUEST_URI'] renvoie un slashe en première position (ex : /administrator.php), donc la chaine "administrator" ne peut pas être trouvée en première position (numéro 0) mais au minimum en deuxième position (soit le numéro 1). Mais la remarque de [b]Ryle[/b] est quand même intéressante car ton code n'est pas "très satisfaisant pour l'esprit" puisque la fonction renverra 0 si le terme à rechercher est trouvé en position 0 ou s'il n'est pas trouvé du tout (puisque tu fais : if ($pos === false){$pos = 0;}return $pos;).
Tu pourrais faire une fonction plus générique et facile à comprendre en faisant par exemple :
[php]function isAdmmin($chaine = 'administrator')
{
if (strpos($_SERVER['REQUEST_URI'],$chaine) !== false) return true; else return false;
}[/php]
Enfin bon, c'est juste pour causer... Concernant ta boucle infinie, c'est peut-être la condition de ta boucle qui interfère avec le code retourné par ta fonction...