Dalam PHP, tatasusunan bait boleh ditukar kepada rentetan menggunakan fungsi pack() atau ia boleh ditukar kepada rentetan yang digabungkan dengan pembatas tertentu menggunakan fungsi implode().
Format penggunaan fungsi pack() adalah seperti berikut:
$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f); $str = pack('C*', ...$byteArray); echo $str; //输出:hello
Dalam kod di atas, $byteArray ialah tatasusunan yang mengandungi nilai bait, dengan memanggil fungsi pack() dan menghantar ' C *' format rentetan, tukar $byteArray kepada rentetan. 'C' bermaksud pembungkusan dengan bait yang tidak ditandatangani (iaitu integer tidak bertanda 8-bit), '*' bermaksud pembungkusan semua elemen. Menggunakan ...$byteArray, hantar elemen dalam $byteArray sebagai parameter fungsi. Fungsi
implode() boleh digunakan seperti ini:
$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f); $str = implode('', array_map('chr', $byteArray)); echo $str; //输出:hello
Dalam contoh ini, fungsi array_map() digunakan pada setiap elemen dalam $byteArray dan fungsi chr() ialah digunakan untuk Setiap bait ditukar kepada aksara ASCII yang sepadan. Kemudian gabungkan setiap aksara ke dalam rentetan, menggunakan rentetan kosong sebagai pembatas.
Selain itu, dalam PHP 7.2.0 dan ke atas, anda boleh menggunakan fungsi hex2bin() untuk menukar rentetan heksadesimal kepada data binari.
$str = '68656c6c6f'; $byteArray = hex2bin($str); echo $byteArray; //输出:hello
Ringkasnya, terdapat banyak cara untuk menukar tatasusunan bait kepada rentetan dalam PHP Anda boleh memilih kaedah yang sesuai dengan anda untuk penukaran.
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan bait kepada rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!