n'abend,
die ersetzung der sonderzeichen ä,ö,ü mit ae, oe, ue
... erreichst du am Einfachsten so:
$zeichen = array( 'ä' => 'ae', 'ö' => 'oe', 'ü' => 'ue', 'ß' => 'ss');
$string = "Hällö Wörld";
$ohneUmlaute = strtr( $string, $zeichen );
mir geht es hier generell um ein prinzip, derartige ersetzungen mit regulären ausdrücken und backreferences zu lösen.
du suchst preg_replace() und die dazugehörige Dokumentation. Auf der selben Seite gibt es auch ein kleines Beispiel dazu. Für diesen Spaß ist der Modifikator e (evaluate) verantwortlich
preg_replace_callback() ist dann mal wieder eine php-typische "vereinfachung" des Obigen.
$string = "Hällö Wörld";
function replaceUmlauts( $char ){
switch( $char[0] ) // gesamtes suchmuster
{
case 'ä': return 'ae'; break;
case 'Ä': return 'Ae'; break;
case 'ö': return 'oe'; break;
case 'Ö': return 'Oe'; break;
case 'ü': return 'ue'; break;
case 'Ü': return 'Ue'; break;
case 'ß': return 'ss'; break;
}
}
$ohneUmlaute = preg_replace_callback( '/[äöüß]/i', 'replaceUmlauts', $string );
(beispiele getippt, nicht ausgeführt)
weiterhin schönen abend...
--
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|