GoaSkin Geschrieben 27. August 2013 Geschrieben 27. August 2013 Hallo, ich möchte in einem PHP-Skript eine Binärdatei interpretieren, in der nicht immer ein ganzes Byte einem Wert entspricht, sondern die einzelnen Bits eines Bytes. Kennt jemand eine Funktion oder einen einfachen Weg, um ein ASCII-Zeichen oder einen hexadezimalen Wert in einen Array aus acht Wahrheitswerten zu zerlegen? Ich komme zwar mit base_convert ein Stück weit, jedoch entfallen dabei führende Nullen, sodass man das Ergbnis nicht so ohne Weiteres in einen Array umwandeln kann.
uenetz Geschrieben 27. August 2013 Geschrieben 27. August 2013 Meinst Du eventuell so etwas? PHP: decbin - Manual
GoaSkin Geschrieben 27. August 2013 Autor Geschrieben 27. August 2013 So ähnlich... nur dass eben kein String heraus kommt, sondern ein aufgefüllter Array statt decbin(12) = "1100" -> array(0,0,0,0,1,1,0,0) aktuell weiche ich über folgende Funktion aus: function hexBitarray($value) { $io = base_convert((string)$value,16,2); for($i=0;$i<8;$i++) $b[$i]=0; for($i=8-strlen($io);$i<8;$i++) $b[$i]=substr($io,$i-(8-strlen($io)),1); return $b; } Würde das aber gerne eleganter lösen und falls möglich auf eine eigene Funktion verzichten.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden