Toujours probleme foreach...

Clonk Messages postés 278 Date d'inscription mardi 22 janvier 2002 Statut Membre Dernière intervention 29 août 2006 - 3 juil. 2003 à 12:00
Clonk Messages postés 278 Date d'inscription mardi 22 janvier 2002 Statut Membre Dernière intervention 29 août 2006 - 3 juil. 2003 à 15:02
Mais un peu différent:
j'ai trouvé une parade, voilà mon code:
foreach($lines as $line)
{
$line = trim($line);
if ($line!="" AND $line!="Nom de l'entreprise :" AND $line!="periode :" AND $line!="intitule :")
{
if ($line=="Realisation :")
{
//Next line
next($lines);
While ($line != "Nom de l'entreprise :" AND $line)
{
$tab[$i].="\n".$line;
//Next line
next($lines);
};

}
else
{
$tab[$i]=$line;
};
$i++;
};

(j'espere que C lisible)

next() permet de passer à l'élément suivant d'un array.

le problème, C que j'ia le message suivant à l'execution:
Fatal error: Maximum execution time of 30 seconds exceeded in c:\program files\easyphp\www\plaut\cv\modifyexp.php on line 29

sachant que line29 C la ligne du next($lines) dans mon While...

Quelqu'un aurait-il une autre solution???

2 réponses

cs_mehdibou Messages postés 365 Date d'inscription vendredi 24 mai 2002 Statut Membre Dernière intervention 18 octobre 2004
3 juil. 2003 à 12:24
Oui

car $line reste le $line assigné lors du foreach et n'est pa changé quand tu fais next($lines); donc tu as une boucle infinie...
pour y remédier, fais $line=next($lines); à chaque fois que tu utilise next($lignes);

@+ et bonn' prog'

Mehdi :approve)
0
Clonk Messages postés 278 Date d'inscription mardi 22 janvier 2002 Statut Membre Dernière intervention 29 août 2006
3 juil. 2003 à 15:02
Eh ben non! ça marche pas non plus ^^ mais j'ai trouvé une solution:
en fai, foreach fait une COPIE du tableau et donc n'utilise pas le même pointeur, donc forcément, ça marche pas!

J'au utilisé count(array) et un for... ça marche mieux =)
0
Rejoignez-nous