-
[php] preg_match()
Ho il seguente codice:
Codice PHP:
foreach ($content as $item)
{
$out.= $item->nodeValue." ";
}
foreach ($item0 as $item0)
{
$out0.= $item0->nodeValue." ";
}
preg_match_all("/(.+)/",$out,$m);
preg_match_all("/(.+)/",$out0,$m0);
$testo = $item1->nodeValue.$m[1].$m0[1].$m0[2].$m[2].$m0[3].$m0[4].$m0[5].$m0[6].$m[3].$m0[7].$m0[8].$m[4].$m0[9].$m0[10].$m[5].$m0[11].$m0[12].$m[6].$m0[13].$m0[14].$m0[15].$m[7].$m0[16].$m0[17].$m[8].$m0[18].$m0[19];
echo $testo;
Dovrei e vorrei avere come risultato l'accoppiamento dei vari item salvati,invece li ho separati,l'eco di $testo mi restituisce la copia uguale di un ipotetico
Codice PHP:
echo $out.$out0;
Dove sbaglio?
-
Dovrei controllare un po' meglio il codice, ma ti posso dire che mi pare alquanto strano il fatto che nel secondo foreach usi la stessa variabile $item0 sia come "iterando" (a sinistra di as) che come "iteratore" (a destra di as).
Forse basta sistemare questo per risolvere il problema...
Stammi bene...
-
No il problema non è quello,è nel preg match ne sono certo.
-
C'è anche un altro errore: il terzo parametro di preg_match_all diventa un array di due dimensioni (e non una sola come hai scritto nel codice) - vedi: http://www.php.net/manual/en/functio...-match-all.php
Altra cosa: sicuro che la tua regexp sia corretta? Stai praticamente escludendo solo le stringhe vuote, senza però tentare nessuna separazione (di parole, di righe o quant'altro)...
Stammi bene...
-
Risolto usando explode()
Codice PHP:
$m=explode(" ",$out);
$m0=explode(" ",$out0);
Ho tolto i preg e messo gli explode,erano ocme pensavo i preg sbagliati.