In PHP kann ein Byte-Array mit der Funktion pack() in einen String konvertiert werden, oder es kann mit der Funktion implode() in einen String konvertiert werden, der mit einem angegebenen Trennzeichen verkettet ist.
pack()-Funktionsverwendungsformat ist wie folgt:
$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f); $str = pack('C*', ...$byteArray); echo $str; //输出:hello
Im obigen Code ist $byteArray ein Array, das Bytewerte enthält, indem die pack()-Funktion aufgerufen und übergeben wird Zeichenfolge im „C*“-Format, $byteArray in Zeichenfolge konvertieren. „C“ bedeutet Packen nach vorzeichenlosen Bytes (d. h. 8-Bit-Ganzzahl ohne Vorzeichen), „*“ bedeutet Packen aller Elemente. Übergeben Sie mit ...$byteArray die Elemente in $byteArray als Funktionsparameter.
implode()-Funktion kann wie folgt verwendet werden:
$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f); $str = implode('', array_map('chr', $byteArray)); echo $str; //输出:hello
In diesem Beispiel wird die array_map()-Funktion auf jedes Element in $byteArray angewendet und verwendet chr() Die Funktion wandelt jedes Byte in das entsprechende ASCII-Zeichen um. Verketten Sie dann jedes Zeichen zu einer Zeichenfolge und verwenden Sie die leere Zeichenfolge als Trennzeichen.
Darüber hinaus können Sie in PHP 7.2.0 und höher die Funktion hex2bin() verwenden, um hexadezimale Zeichenfolgen in Binärdaten umzuwandeln.
$str = '68656c6c6f'; $byteArray = hex2bin($str); echo $byteArray; //输出:hello
Kurz gesagt, es gibt viele Möglichkeiten, Byte-Arrays in PHP umzuwandeln. Sie können die Methode auswählen, die für die Konvertierung am besten geeignet ist.
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein Byte-Array in PHP in einen String. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!