Autor | Zpráva | ||
---|---|---|---|
davchy Profil |
Ahoj,
jako vždy předcházelo položení dotazu hledání informací a testování, ale kýženého výsledku jsem nedosáhl. Došel jsem k použití regulárních výrazů, ale to mě začala má lysá hlava obrůstat, aby se mi tam mělo co hrůzou stavět. Následujícím kódem získávám z externího webu odkaz obrázku: <?php $ID = 1839032 //$_REQUEST['ID']; $html = file_get_contents("http://farmerama.bigpoint.com/?action=externalGarden&uid=$ID"); preg_match("#<img name=\"bgImage\" id=\"bgImage\" src=\"(.*)\" border=\"0\" width=\"696\" height=\"414\">#i", $html, $match); $img = $match[1]; echo $img; //http://fa-usr-strg.bpcdn.net/gp/0/18/15/1839032_1305568168.jpg $imgid1 = "1839032" //tento řetězec potřebuji získat z $img $imgid2 = "1305568168" //tento řetězec potřebuji získat z $img ?> Můžete mi prosím někdo napsat regulární výraz pro plnění $imgid1 a $imgid2? Mockrát děkuji. Moderátor Joker: Titulek „Regulární výrazy?“ nevystihuje podstatu dotazu. Příště zkus prosím vymyslet lepší.
|
||
nikdo Profil * |
#2 · Zasláno: 29. 8. 2011, 16:42:35
<?php $ID = 1839032; //$_REQUEST['ID']; $html = file_get_contents("http://farmerama.bigpoint.com/?action=externalGarden&uid=$ID"); preg_match("#<img name=\"bgImage\" id=\"bgImage\" src=\"(.*)\" border=\"0\" width=\"696\" height=\"414\">#i", $html, $match); echo $img; //http://fa-usr-strg.bpcdn.net/gp/0/18/15/1839032_1305568168.jpg preg_match("#\_([0-9]*)\.jpg#i", $match[1], $vystup); $imgid1 = $ID; //tento řetězec potřebuji získat z $img $imgid2 = $vystup1; //tento řetězec potřebuji získat z $img ?> |
||
Joker Profil |
#3 · Zasláno: 29. 8. 2011, 16:43:10
davchy:
Takže jde o to získat název souboru a pak část před podtržítkem a za podtržítkem? Název souboru by měla být část mezi posledním lomítkem a poslední tečkou, substr+strpos. Pokud adresa obrázku bude jinak stejná, šlo by to ještě zjednodušit. No a pak stačí expolode podtržítkem a je to. |
||
davchy Profil |
#4 · Zasláno: 29. 8. 2011, 17:04:21
Mockrát všem děkuji, hned první řešení bylo to čeho jsem potřeboval dosáhnout. Jen kdyby to někdo potřeboval, tak u $imgid2 byla malinkatá chybka, kolem 1 doplnit hranaté závorky, tedy
$imgid2 = $vystup[1]; //tento řetězec potřebuji získat z $img |
||
Časová prodleva: 13 let
|
0