dedlfix: Binary to Text <=> Text to Binary Formel

Beitrag lesen

Hi!

Naja, ich dachte, dass ich einfach die gesamte Tabelle..
http://www.roubaixinteractive.com/PlayGround/Binary_Conversion/The_Characters.asp
..in das Array einspeise also [$text] => [$bin]. Wenn ich dann $array["ä"] mir ausgeben lasse kommt der korrekte bin-code.

Das löst das Problem mit UTF-8-Umlauten nicht, sondern verfälscht die ganze Sache nur. Ein UTF-8-ä sind nun mal zwei Bytes oder 16 Bits.
Wenn du das ignorierst und deinen PHP-Code als UTF-8 speicherst, dann hast du da quasi ein

$array['2-byte-utf-8-ä'] = 'bitfolge';

Dann kommst du mit einem ä daher, was ebenfalls UTF-8-kodiert vorliegt, triffst diesen Tabelleneintrag und scheinbar ist alles bestens. Doch wenn entweder Code oder Zeichen in anderen Kodierungen gespeichert sind, dann ist 1-byte-iso8859-1-ä nicht gleich 2-byte-utf-8-ä und du findest in der Tabelle nichts.

Zudem musst du aus einem Text auch erst die Zeichen extrahieren. PHP ist (in Versionen kleiner als 6, also auch in der aktuellen 5.x) nicht wirklich UTF-8-fähig. Es arbeitet bei Mehrbyte-Kodierungen Byteweise, nicht Zeichenweise, wenn du nicht gerade die MultiByte-Extension-Fukntionen verwendest.

Ich möchte halt Text in 0en und 1en darstellen. Das ist alles.

So ein Text ist ja nur für dich als Menschen ein Text. Für den Computer sind es Bytes, und das je nach gewählter Kodierung unterschiedlichen. Es bringt dir sicher nicht viel, wenn du einen tatsächlich als UTF-8 kodierten Text in der Binärvariante von ISO-8859-1 darstellen lässt.

Ich frag ja nicht grundlos so hartnäckig nach dem eigentlichen Sinn dieses Vorhabens. Was willst du mit dieser Binärdarstellung zeigen?

Lo!