Autor | Zpráva | ||
---|---|---|---|
pogg Profil |
Zdravím všechny...
Chtěl bych poprosit o radu s funkcí file_get_contents($filename). Potřeboval bych z jedné svojí stránky vytáhnout všechny odkazy, které jsou uvozeny mezi <li>.....</li> podle diskuzí zde uvedených jsem se dobral k tomuto: $filename = "http://www.domena.cz/"; $page = file_get_contents($filename); preg_match("~<li>(.+?)</li>~si", $page, $out); print_r($out[1]); ale výstup mi vyhodí: <a href="xxx">xxx</a> Tzn. vyhodí vždy jen první obsah mezi <li>.....</li>, které najde na té stránce. Nevím však jak dosáhnout vypsání všech obsahů mezi <li>.....</li>. Asi nejaká podmínka. Mohl by někdo poradit, děkuji.... |
||
lagin Profil |
#2 · Zasláno: 10. 7. 2009, 09:50:05
print_r($out[1]); //Timhle vypisujes jenom druhy prvek pole. ;)
foreach($out as $outone) { echo $outone; } |
||
pogg Profil |
#3 · Zasláno: 10. 7. 2009, 09:53:22
„lagin“
uprava tedy preg_match("~<li>(.+?)</li>~si", $page, $out); foreach($out as $outone) { echo $outone; } to mi vypíše stále jen ten první nalezeny, jen s tím rozdílem, že přidá <li><a href="xxx">xxx</a></li><a href="xxx">xxx</a> takže to neřeší ten problém, ale díky |
||
Alphard Profil |
#4 · Zasláno: 10. 7. 2009, 09:54:55
použijte funkci preg_match_all()
|
||
pogg Profil |
#5 · Zasláno: 10. 7. 2009, 09:56:24
Alphard
mohu nějakou jednoduchy příklad??? funkci neznám díky.... |
||
pogg Profil |
#6 · Zasláno: 10. 7. 2009, 10:00:44
Tak již jsem dosáhl výsledku díky Alphard
preg_match_all("~<li>(.+?)</li>~si", $page, $out); print_r($out[1]); jen je ještě problém, že to vypíše v poli: Array ( [0] => <a href="xxx">xxx</a> [1] => <a href="yyy">yyy</a> [2] => <a href="zzz">zzz</a> ) |
||
lagin Profil |
#7 · Zasláno: 10. 7. 2009, 10:05:19
preg_match_all("~<li>(.+?)</li>~si", $page, $out); $links = $out[1]; foreach($links as $link) { echo $link . "\n"; } |
||
tiso Profil |
#8 · Zasláno: 10. 7. 2009, 10:06:56
pogg no a na to pole funguje ten foreach..., takže:
foreach($out[1] as $item){ ... } |
||
pogg Profil |
#9 · Zasláno: 10. 7. 2009, 10:07:57
Pánové klobouk dolů před vámi
lagin skvěle to funguje, nenapadlo mě to spojit :D Ještě jednou díky moc..... Vyřešeno(Kbyby to někdo potřeboval celé to je) $filename = "http://www.domena.cz/"; $page = file_get_contents($filename); preg_match_all("~<li>(.+?)</li>~si", $page, $out); $links = $out[1]; foreach($links as $link) { echo $link . "\n"; } |
||
pogg Profil |
#10 · Zasláno: 10. 7. 2009, 10:09:05
Díky všem za přízpěvky ještě se toho mám dost co učit :D
|
||
lagin Profil |
#11 · Zasláno: 10. 7. 2009, 10:09:41
Neni zac, ale nejvic dik asi Alphardovi. :) To _all bylo stezejni. :) Mozna bych mel nejdriv poradne koukat. :-D
|
||
Časová prodleva: 16 let
|
0