2017-05-29 4 views
0

Ich bin verrückt mit diesem utf8 und Ansi und Ascii Sachen. Immer die gleiche alte Geschichte ...php spezielle Zeichen (Umlaute) von URL

Ich habe eine URL, die einen GET-Parameter enthält: http://www.example.com/?c=Österreich

In meinem PHP-Skript, ich mache einen Schalter:

switch (strtolower($country)) { 
    case "deutschland": 
    $country = "DE"; 
    break; 

    case "österreich": 
    $country = "AT"; 
    break; 

    case "schweiz": 
    $country = "CH"; 
    break; 

    default: 
    $country = "DE"; 
    break; 
} 

Für Östereich, erhalte ich der Standardwert "DE". Also, wie löst man das?

+0

Verwenden 'osterreich' instad von' österreich'. Und pass dasselbe von URL. –

+0

Verwenden Sie die Funktion urlencode()? http://php.net/manual/tr/function.urlencode.php – vural

+0

Versuchen Sie var_dump (strtolower ($ country)), damit Sie sehen können, mit welcher Ausgabe Sie es zu tun haben. – Redrif

Antwort

3

Sie benötigen Multibyte-Funktionen verwenden UTF8 Strings zu verwalten, so mb_strtolower() anstelle von strtolower()

+0

so einfach ... thx – DaFunkyAlex

Verwandte Themen