Bonjour.
J'ai une erreur de timeout avec mon php. Ma boucle prend trop de temps. Je connais la fonction set_time_limit. Mais y-a-t'il une autre façon de passer par-dessus cette erreur?
Bonjour.
J'ai une erreur de timeout avec mon php. Ma boucle prend trop de temps. Je connais la fonction set_time_limit. Mais y-a-t'il une autre façon de passer par-dessus cette erreur?
Optimiser ta boucle, ce qui ne sera pas facile avec le code que tu nous a donné...![]()
Oups
En gros, c'est un site qui donnera l'état des ports d'un serveur. Et c'est là mon problème. Il faut que même que je laisse un certain délai à la requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 while (list($key, $val) = each($tableauIni)) { if ($key >= 10) { $fp = fsockopen($serv[$c], $key, $errno, $errstr, 10); if (!$fp) $html .= "\n<td color=\"ferme\">"; else $html .= "\n<td class=\"ouvert\">"; $html .= $val; $html .= "\n</td>"; } else $html .= "\n<td class=\"ferme\">---\n</td>"; }
Edit: Si je prenais la boucle et que je la plaçais dans un autre fichier que j'appellerais avec la fonction include, est-ce que le problème serait réglé?
Le principal des perfs est donc consommé par cette instruction récurrente.
Ceci étant dépendant d'une variable de boucle ($key), tu ne peux pas la sortir de l'itération.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $fp = fsockopen($serv[$c], $key, $errno, $errstr, 10);
Donc à part le set_time_limit(), je ne vois pas.
Désolé![]()
Dommage... Merci quand même.
Partager