Secondo voi, come mai 'sto script va quasi sempre in timeout?non fa niente di particolare
codice:
<?php
$xml_small = simplexml_load_file("xml/offerte_small.xml");
$num_tot = 1;
$name_pars = "void";
while ($num_tot <= 15)
{
$num_rand = rand(0, 14);
$xml_rand = $xml_small->offert[$num_rand]->name;
settype($xml_rand, "string");
$posizione = strpos($name_pars, $xml_rand);
if($posizione === false)
{
echo "<div><div>da ".$xml_small->offert[$num_rand]->prezzo." €</div><a href=\"".$xml_small->offert[$num_rand]->target."\">".$xml_small->offert[$num_rand]->servizio."</a><div>".$xml_small->offert[$num_rand]->tipo."</div></div>";
$name_pars .= "-".$xml_rand;
$num_tot++;
}
}
?>
e lo XML
<?xml version='1.0' encoding='utf-8'?>
<offerts>
<offert id="1">
<name>Uno</name>
<servizio>Nome servizio</servizio>
<target>bho.php</target>
<tipo>tipologia</tipo>
<prezzo>000</prezzo>
</offert>
etc
In pratica continuo a ciclare dei numeri random, che poi corrispondono agli id di offert nell'XML, fino a quando non ho estrapolato 15 id diversi. Per capire quali ho già letto e quali no, di volta in volta salvo gli id unici nella variabile $nam_pars, che poi confronto con l'id attuale tramite strpos.
Visto che strpos confronta stringhe mentre l'id è numerico ho creato una sorta di doppia numerazione tramite il tag name.
Quando lo esegue ci mette un istante, non capisco come mai spesso restituisca un 504...