J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 18 sept. 2005 à 11:47
Salut,
J'ai peut-être trouvé pourquoi $n++ ne fonctionne pas !
Explication :
D'où viend ce $n ?
...
list ($mail, $m) explode (';', $emai); // $emai> $m est (string)
if ($m == "") $m=0; //$m n'est pas vide => $m reste (string)
$n=$m; // $n est $m donc est (string)
if ($n == 0) $n=1 // là tu compare un (string) à un (int) ... !!!
// si $n contient un chiffre dans sa chaine de caractère, $n == 0 est faux
if ($m >= 1) $n+=1; // $n est (string)... (string)++ => BUG,
// par contre pour l'opération (int)+(string),
PHP converti le string en int est fait l'opération. Donc ça passe au
parsing, mais relève d'une très grosse erreur de conception.
Voilà ma petite expli.
Ne connaissant pas le fichier mail.txt, je n'ai pas chercher à
comprendre le but de ces manipulation. Mais il me semble que le
comportement de la fonction add_mail n'est pas franchement celui
recherché.
A cause de la permissivité de PH, Fait attention aux types avant de les utiliser.
Teste ta fonction avec des cas expérimantaux, pour voir sa robustesse.
Puis si les tests prouvent que la fonction est correcte, $n+=1 ne dérange pas ;)