Wie konvertieren von integer zu byte-array in php
wie würde ich das konvertieren von einem integer in ein array mit 4 bytes?
Hier ist der genaue code, den ich will-port (in C#)
int i = 123456;
byte[] ar = BitConverter.GetBytes(i);
//ar will contain {64, 226, 1, 0}
Wie würde ich genau die gleiche Sache in PHP ?
Sind Sie auf der Suche nach dem Ergebnis ist ein array, das die decimal-zahlen 64, 226 etc? Oder sind Sie eigentlich auf der Suche nach der bytes, die in PHP einen string?
InformationsquelleAutor user1392060 | 2012-07-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Gegenwert Konvertierung ist
Sehen Sie es in Aktion.
Sollte man sich aber bewusst sein, dass die byte-Reihenfolge (little/big endian) ist abhängig von der Rechner-Architektur (wie es auch im Fall von
BitConverter
). Das könnte oder könnte nicht gut sein.InformationsquelleAutor Jon
Da das äquivalent von einem byte-array in PHP ist ein string, der dies tun werde:
Zu visualisieren, verwenden Sie
bin2hex
:PHP strings im wesentlichen byte-arrays.
Oh, ok! Entschuldigt meine Unwissenheit, dann. Jetzt wo du es sagst, ich denke, dass ich vielleicht overcomplicating Dinge, die VIEL in PHP...
Wollen Sie einzelne bytes in ein array, die Sie könnten versuchen
str_split($bytes)
.InformationsquelleAutor deceze
hmm, du hast Recht. PHP konvertiert den integer in string in die unpack () - Aufruf. sorry für die falsche Antwort.
InformationsquelleAutor Jan Prieser