2010-03-06 15 views

Odpowiedz

186

Umieszczasz rtrim w swojej odpowiedzi, dlaczego nie po prostu to sprawdzić?

$url = rtrim($url,"/"); 

Na marginesie należy wyszukać dowolną funkcję PHP, wykonując następujące czynności:

(rtrim podpórek „Prawo wykończeniem ')

+10

stackoverflow jest o wiele szybszy :-D – daniel

+45

Daj człowiekowi ogień, a on jest ciepły przez jeden dzień, podpalił człowieka i jest mu ciepło do końca życia. Dostajesz mój punkt widzenia. Witryna php.net jest jedną z funkcji zabójcy języka - użyj jej. – Erik

+9

@daniel: SO nie jest jednak Twoją osobistą wyszukiwarką. Unikanie * jakiegokolwiek * wysiłku w udzielaniu odpowiedzi na twoje pytanie zwykle nie jest dobrze odbierane ... – Joey

-20
$urls="www.amazon.com/ www.digg.com/ www.microsoft.com/"; 
echo preg_replace("/\b\//","",$urls); 
+9

Nie, nie używaj w tym celu wyrażenia regularnego. –

+0

Poza tym RE może całkiem nieźle poradzić sobie z adresami URL, które zawierają również ukośniki w środku. – Joey

+0

Nie ma nic złego w tej odpowiedzi. Zakłada po prostu, że adresy URL są łączone w łańcuch, w przeciwieństwie do tablicy. Jeśli są w szyku, odpowiedź Erika jest lepsza. Jeśli są w łańcuchu oddzielonym spacjami lub podziałami linii, jest to w porządku. – supertrue

6

Proste i działa na systemach Windows i UNIX:

$url = rtrim($url, '/\\') 
0

Przyjechałem tu szuka sposobu, aby usunąć końcowe ukośnik i przekierować przeglądarkę, mam wymyślić odpowiedź, że chciałbym akcji za każdy przychodzi po mnie:

//remove trailing slash from uri 
if(($_SERVER['REQUEST_URI'] != "/") and preg_match('{/$}',$_SERVER['REQUEST_URI'])) { 
    header ('Location: '.preg_replace('{/$}', '', $_SERVER['REQUEST_URI'])); 
    exit(); 
} 

($_SERVER['REQUEST_URI'] != "/") uniknie gospodarz URI np www.amazon.com/ ponieważ web browsers always send a trailing slash after a domain name i preg_match('{/$}',$_SERVER['REQUEST_URI']) dopasuje wszystkie inne URI ze spływu ukośnik jako ostatni ch charakter. Następnie preg_replace('{/$}', '', $_SERVER['REQUEST_URI']) usunie ukośnik i przekaże do przekierowania header(). Funkcja exit() jest ważna, aby zatrzymać jakiekolwiek dalsze wykonywanie kodu.

Powiązane problemy