phpbar.de logo

Mailinglisten-Archive

[php] Character Entities

[php] Character Entities

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Mon Okt 31 07:48:30 CET 2005


Hallo Norbert,

Norbert Pfeiffer schrieb:
> Sven Eicher schrieb:
>> > hat jemand ein Script, das mit automatisch in einem Text alle
>> >  ä's, ü's etc. durch ä , uuml; etc. ersetzt?
>> function umlaute($wert) {
>>   $zeichen = array('ä'=>'ä', 'Ä'=>'Ä',
>>                    'ö'=>'ö', 'Ö'=>'Ö',
>>                    'ü'=>'ü', 'Ü'=>'Ü',
>>                    'ß'=>'ß'
>>                   );
>>   return strtr($wert, $zeichen);
>> }
> im Prinzip JA - aber:
> Mit hartgecodeten Zeichen siehst Du jedoch auf einem Mac oder
> auch anderen Maschinen echt dumm aus - deshalb lieber so:
>
> function umlaute($wert) {
>     $zeichen = array('ä'=>'ä',  'Ä'=>'Ä',
>                      'ö'=>'ö',  'Ö'=>'Ö',
>                      'ü'=>'ü',  'Ü'=>'Ü',
>                      'ß'=>'ß');
>     return strtr($wert, $zeichen);
> }

das ist doch auch hartkodiert? Ich kann mir nur vorstellen, daß die von
Sven vorgeschlagene Kodierung Probleme auf Systemen verursachen kann, wo
die Browser die dezimale Unicode-Notation der Entitäten _noch_ nicht
unterstützen. Die sogenannte benannte Notation ist eben schon viel älter
und wird daher wohl mit Sicherheit unterstützt. Oder worauf wolltest Du
hinaus?

Ich frage mich allerdings, wie alt ein System bzw. ein Browser sein muß,
um die dezimale Unicode-Notation von Entitäten _nicht_ zu unterstützen...
Bei meinem Linux habe ich mit dieser Notation keine Probleme. Und Mac OS
ist meines Wissens heutzutage ein FreeBSD-Derivat. Warum sollte es das
nicht auch können?


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive