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 *
<?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
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
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

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0