Ersetze Leerzeichen durch einen Bindestrich in einer URL

7

Ich habe es geschafft, Sonderzeichen wie:; / etc in meiner URL, aber jetzt hat es wieder die Leerzeichen. Hier ist mein Code:

%Vor%

Ich möchte, dass es Sonderzeichen entfernt und Leerzeichen durch Bindestriche ersetzt.

    
Robdogga55 30.01.2013, 09:35
quelle

2 Antworten

19

Versuchen Sie str_replace(' ', '-', $string);

    
ka_lin 30.01.2013 09:38
quelle
9

Sie können preg_replace verwenden:

%Vor%

Dadurch werden alle Leerzeichen mit einem einzigen '-' Bindestrich ersetzt. Wenn Sie also einen doppelten, dreifachen usw. Platz haben, gibt es immer noch einen Strich.

EDIT: das ist eine generec-Funktion, die ich im letzten Jahr benutzt habe, um meine URLs sauber zu machen

%Vor%

Es werden alle nicht-alphanumerischen Zeichen in Leerzeichen konvertiert, dann wird das gesamte Leerzeichen in den Bindestrich konvertiert und dann alle Bindestriche am Ende / Anfang der Zeichenfolge abgeschnitten. Dies funktioniert besser, als Sonderzeichen in Ihrem str_replace

aufführen zu müssen     
Christopher Brunsdon 30.01.2013 09:40
quelle

Tags und Links