Autor | Zpráva | ||
---|---|---|---|
tomtom177 Profil * |
#1 · Zasláno: 7. 5. 2012, 22:06:57
Dobrý den,
měl bych jeden dotaz. Mám nějaký text stránky a v něm se může na jakémkoliv místě vyskytovat tento text: {galerie XX} kde místo XX je nějaké číslo. Chtěl bych docílit toho, že tento kus nahradím jiným textem. Například takto: reg_replace("({galerie [0-9]})", 'nejaky text', $body) Jak ale docílím toho, abych číslo XX uložil do nějaké proměnné? Ukážu na příkladu proč bych to tak chtěl: $body = 'tady to je nejaky text stranky. a sem umistime galerii s ID 13: {galerie 13}'; // obsah stranky //zde bych do promenne $id_galerie potreboval ulozit jeji ID, tedy cislo 13 $obsah_galerie = file_get_content('galerie-'.$id_galerie.'.php'); // do promenne obsah_galerie si nactu obsah galerie 13 ze souboru galerie-13.php $body = reg_replace("({galerie [0-9]})", $obsah_galerie, $body) // nahradime text {galerie 13} ve strance samotnou galerii echo $body; // vypiseme stranku Jak tedy uložit číslo 13 do proměnné $obsah_galerie? Děkuji za tipy |
||
candiess Profil |
zkus to přes explode a pak si s tím pohrát, je t neelegantní řešení ale tak ještě nad tím popřemýšlím :)
|
||
Borius Profil |
#3 · Zasláno: 8. 5. 2012, 00:41:58
tomtom177:
Přes regulární výraz. preg_match('/{galerie (?P<id_galerie>[0-9]+)}/', $body, $matches); $id_galerie=$matches['id_galerie']; $id_galerie=13
|
||
Tori Profil |
tomtom177:
„// do promenne obsah_galerie si nactu obsah galerie 13 ze souboru galerie-13.php“ To je obyčejné HTML v souboru s koncovkou .php, anebo je to opravdu skript, který se má provést? Pokud skript, tak je potřeba načíst ne jeho kód, ale výsledek: file_get_contents('http:>//muj.web.cz/galerie-13.php');
Jinak v těch skriptech galerie-1 až galerie-x asi bude dost shodných částí kódu, ne? Nebylo by lepší udělat jen jeden skript, co dostane ID galerie jako parametr (galerie.php?id=13)? Nemusíte pak pro každou novou galerii nakopírovat nový skript. function vlozGalerii($id) { $url = 'http://neco.nekde.cz/galerie.php?id='.(int)$id; return file_get_contents($url); } $body = preg_replace('/{galerie (?P<id_galerie>[0-9]+)}/', vlozGalerii('$1'), $body); |
||
tomtom177 Profil * |
#5 · Zasláno: 8. 5. 2012, 13:56:49
Super,
Děkuju Vám! |
||
Časová prodleva: 12 let
|
0