ISO 3166 Code für eine Benutzereingaben finden … mit dem Zend Framework

Stichwort Benutzer-Regisitrierung mit Angabe des Landes: Der User gibt ein „Deutschland“, ist ja auch okay so, aber eure Anwendung (oder eine Drittanwendung) braucht den ISO Code dazu. Und was ist mit Schweiz oder einem Land wie Mexico?

Was nun? Eine lange Tabelle pflegen, womöglich noch selber? Das geht heute viel einfacher, zumindest, wenn man das Zend Framework benutzt:


$locale = new Zend_Locale('DE');
$list = $locale->getTranslationList('territory', 'de_de');
$filterlist = array_search('Deutschland', $list);
echo $filterlist;

Der Trick ist nun, dass wir uns eine Liste aller Länder mit den Codes ausgeben lassen, diese Liste ist in der Sprache, in der die Besucher auch die Daten eingeben (hier Deutsch). Nun suchen wir mit array_search() einfach den richtigen Wert raus (oder reagieren mit einem Fehler auf nicht gefunden, das ist hier nicht mit drin).

Die Ausgabe lautet richtigigerweise DE.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.