Mailinglisten-Archive |
Hallo.
Michael Borchers schrieb:
> ich übergebe ein $keyword in eine funktion und überprüfe ob es in einem
> array vorhanden ist, wenn ja, dann soll die übersetzung ausgespuckt werden.
>
> gibt es keine einfachen array() funktionen, die so etwas überprüfen können?
>
> $locales_de_array = array(
> "manufacturers_name" => "Hersteller",
> "shops_name" => "Shop",
> "waregroups_name" => "Warengruppe"
> );
>
> function translate($keyword, $locale = "de")
> {
> global $locales_de_array;
>
> $keyword = strtolower($keyword);
>
> foreach($locales_de_array as $locales_de)
> {
> if(key($locales_de_array) == $keyword)
> {
> $keyword_translate = current($locales_de_array);
> }
> else
> {
> $keyword_translate = ucfirst($keyword);
> } // swtich
> } // foreach
>
> return $keyword_translate;
> }
Wenn ich Dich recht verstanden habe, geht es Dir um die Ueberpruefung,
ob Dein Keyword in dem vorher definierten Array vorhanden ist.
IMHO bieten sich da in_array() und array_keys() (evtl. sogar nur letzere
Funktion ueber den optionalen Suchwert) an.
In etwa wie folgt:
if ( in_array($keyword, array_keys($locales_de_array)) ) {
$keyword_translate = $locales_de_array[$keyword];
} else {
[...]
}
http://www.php.net/manual/en/function.in-array.php
http://www.php.net/manual/en/function.array-keys.php
Gruss
Marcus
php::bar PHP Wiki - Listenarchive