x-kom hosting

preg_match(); - how to do it?

simivar
utworzono
utworzono

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
komentarz

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.

  • Dobra wypowiedź 1
simivar
komentarz
komentarz

Jaką funkcją da radę takowy tekst obrócić? ; o

benkowik
komentarz
komentarz

Albo jeszcze wydajniej, bez zbędnych operacji.
[code]$tekst_wyciety = substr($tekst, (strrpos($tekst,"/")));[/code]

  • Dobra wypowiedź 1
simivar
komentarz
komentarz

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.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Strona wykorzystuje pliki cookies w celu prawidłowego świadczenia usług i wygody użytkowników. Warunki przechowywania i dostępu do plików cookies możesz zmienić w ustawieniach przeglądarki.