simivar utworzono 29 sierpnia 2010 utworzono 29 sierpnia 2010 Witam! Mam problem z funkcją preg_match(); Otóż chciałem zrobić rozpoznanie ostatniej części linku, użyłem do tego na początku $_SERVER["REQUEST_URI"]; i ereg(); - jednak otrzymałem błąd iż funkcja jest 'przestarzała' i zaleca się używanie preg_match(); Mój kod z ereg: [php]$filename = $_SERVER["REQUEST_URI"]; ereg ("([a-z]{1,9})/([a-z]{1})/([a-z]{1})/([a-z]{1,9})", $filename, $regs); echo "$regs[4]";[/php] linki mają wartość localhost/index.php/p/v/[coś] i to właśnie to [coś] chciałbym wyciągnąć. Niestety, kombinowałem z preg_match(); ponad godzinę i nic ; c Ps. udało mi się to zrobić także z explode();, ale jednak chciałbym też ogarnąć tego preg'a. [php]$filename = $_SERVER["REQUEST_URI"]; $filename = explode("/", $filename); echo $filename[4];[/php]
benkowik komentarz 29 sierpnia 2010 komentarz 29 sierpnia 2010 A jeśli adres się zmieni to będziesz musiał zmieniać kod. Lepiej obrócić i wyszukać pierwszy ukośnik i wyświetlić tekst od początku do pozycji ukośnika -1. 1
simivar komentarz 29 sierpnia 2010 Autor komentarz 29 sierpnia 2010 Jaką funkcją da radę takowy tekst obrócić? ; o
benkowik komentarz 29 sierpnia 2010 komentarz 29 sierpnia 2010 Albo jeszcze wydajniej, bez zbędnych operacji. [code]$tekst_wyciety = substr($tekst, (strrpos($tekst,"/")));[/code] 1
simivar komentarz 29 sierpnia 2010 Autor komentarz 29 sierpnia 2010 Przerobiłem to na coś takowego: [code]$tekst_wyciety = substr($tekst, ((strrpos($tekst,"/")+1)));[/code] (dodałem tylko +1, bo inaczej wyświetlało z /) Teraz moim jedynym problemem jest jak tego użyć, skrypt do którego chce to wykorzystać oparty jest na Smarty a {php}{/php} niestety nie działają ;c.
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.