Autor Zpráva
sloncz
Profil
Hezký púodvečer, vytvořil jsem si vlastní galerii a do ní vkládám obrázky v textu pomocí

[GALERIE]url,url,url,url[/GALERIE]

a můj problém nastává, jak z toho textu, který je například v proměnné $obsah, vymazat celý ten řetězec "[GALERIE]url,url,url,url[/GALERIE]" ale ostatní text zachovat?
Vím, že by to mělo jít pomocí fce preg_replace, ale nikde nemohu najít, jak to do ní zapsat, aby smazala vše od té první "[GALERIE]" až do "[/GALERIE]", protože ty url adresy jsou vždy jiné v každým článku.
lionel messi
Profil
sloncz:
Vím, že by to mělo jít pomocí fce preg_replace, ale nikde nemohu najít, jak to do ní zapsat, aby smazala vše od té první "[GALERIE]" až do "[/GALERIE]", protože ty url adresy jsou vždy jiné v každým článku.

Môžeš si pomôcť tzv. zástupnými znakmi a kvantifikátormi. Znak . predstavuje ľubovoľný znak, * značí ľubovoľný počet opakovaní (aj 0). Zhruba takto:

$text = "[GALERIE]Lorem ipsum[/GALERIE] Lidem [g]i psům[/g]";
$pattern = "~\[GALERIE\].*?\[/GALERIE\]~s";
$text = preg_replace($pattern, "", $text);
var_dump($text); //presvedčíme sa, čo je v $text
Juraj Hajdúch
Profil
lionel messi:

Myslel si to asi takto: :)
$text = preg_replace($pattern, "", $text);
lionel messi
Profil
Juraj Hajdúch:
Myslel si to asi takto: :)
Veru áno, vďaka za upozornenie, opravené (neviem, s čím som si to pomýlil).
sloncz
Profil
Děkuji mnohokrát, vše funguje jak má

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: