Autor | Zpráva | ||
---|---|---|---|
slovakCZ Profil |
#1 · Zasláno: 29. 1. 2010, 17:35:52 · Upravil/a: slovakCZ
Zdravim,
mam takovy mensi problem :) ziskavam obsah divu z nejake url: $ziskej = file_get_contents("http://web.cz"); na dane strance je v html toto: <div class="block" style=""><div class="title"><a href="url1" target="_blank" class="txtRed"><b>Ziskany text 1</b></a></div></div><br> <div class="block" style=""><div class="title"><a href="url2" target="_blank" class="txtRed"><b>Ziskany text 2</b></a></div></div><br> Kdyz pote ziskavam obsah tohoto divu: $uprav_link = preg_replace(array('/^.+<div class="title">/s', '/<\/div>.+$/s', '/<br\/>/'), '', $ziskej); echo $uprav_link; Tak mi to na stranku vypise: Ziskany text 2 Tedy kdyz je tech divu na strance 100 tak mi vzdy vypise obsah toho posledniho. Je nejaka moznost, jak vybrat pouze obsah 1. divu? zkousel jsem: $isFirst = true; if ($isFirst) { $uprav_link = preg_replace(array('/^.+<div class="title">/s', '/<\/div>.+$/s', '/<br\/>/'), '', $ziskej); echo $uprav_link; $isFirst = false; } bohuzel nic.. zkousel jsem i: $isFirst = true; while ($isFirst) { $uprav_link = preg_replace(array('/^.+<div class="title">/s', '/<\/div>.+$/s', '/<br\/>/'), '', $ziskej); echo $uprav_link; $isFirst = false; } a take nic.. asi spravne nechapu jak na to :) Dekuji za rady ;) ps. udajne by to melo byt takto: http://newsourcemedia.com/blog/php-replace-only-first-occurrence-of-a-string-match/ upravil jsme tedy radek: $uprav_link = preg_replace(array('/^.+<div class="title">/s', '/<\/div>.+$/s', '/<br\/>/'), '', $ziskej); na $uprav_link = preg_replace(array('/^.+<div class="title">/s', '/<\/div>.+$/s', '/<br\/>/'), '', $ziskej, 1); ale stale mi to nevypise 1., nybrz posledni obsah divu.. =o/ |
||
fajzen Profil |
#2 · Zasláno: 29. 1. 2010, 18:10:56
slovakCZ:
načo tak komplikovano? preg_match('/<div class="title">(.*)<\/div>/', $ziskej, $matches); echo $matches[1]; |
||
slovakCZ Profil |
#3 · Zasláno: 29. 1. 2010, 18:19:07
fajzen:
jati ani nevim :o) jednoduse to je nuda :o)... diky moc, funguje to ;) |
||
Časová prodleva: 13 let
|
0