PHP ialah bahasa skrip sebelah pelayan sumber terbuka yang digunakan dalam pembangunan web, skrip baris arahan dan medan lain. Menukar antara rentetan dan bait adalah operasi yang sangat biasa dalam PHP. Artikel ini akan memperkenalkan cara menukar rentetan kepada bait dan bait kepada rentetan dalam PHP.
1. Tukar rentetan kepada bait
Dalam PHP, anda boleh menggunakan fungsi pack() untuk menukar rentetan kepada bait.
Sintaks fungsi pack() adalah seperti berikut:
string pack ( string $format , mixed $args [, mixed $... ] )
Antaranya, $format
ialah kaedah pembungkusan (iaitu, parameter masuk dibungkus ke dalam rentetan binari mengikut kepada format yang ditentukan), $args
ialah parameter yang akan dibungkus.
Secara khusus, parameter $format
ialah rentetan format yang digunakan untuk menentukan cara data dibungkus. Contohnya, gunakan H*
untuk menukar semua parameter kepada rentetan perenambelasan.
Berikut ialah contoh kod untuk menukar rentetan kepada bait:
$str = 'Hello, world!'; $bytes = pack('H*', bin2hex($str));
Dalam kod di atas, untuk menukar rentetan $str
kepada rentetan heksadesimal, Kemudian gunakan pek() berfungsi untuk membungkusnya ke dalam bait.
2. Tukar bait kepada rentetan
Dalam PHP, anda boleh menggunakan fungsi unpack() untuk menukar bait kepada rentetan.
Sintaks fungsi unpack() adalah seperti berikut:
array unpack ( string $format , string $data )
Antaranya, $format
ialah kaedah membongkar (iaitu, rentetan binari dibongkar ke dalam data mengikut format yang ditentukan), dan $data
ialah Data untuk dibongkar.
Secara khusus, parameter $format
ialah rentetan format yang menentukan cara membongkar data. Contohnya, gunakan H*
untuk menukar data binari kepada rentetan perenambelasan.
Berikut ialah contoh kod yang menukarkan bait kepada rentetan:
$bytes = "\x48\x65\x6c\x6c\x6f\x2c\x20\x77\x6f\x72\x6c\x64\x21"; $str = unpack('H*', $bytes)[1];
Dalam kod di atas, bait dibongkar $bytes
ke dalam rentetan aksara heksadesimal, dan kemudian gunakan bin2hex () berfungsi untuk menukarnya menjadi rentetan. Ambil perhatian bahawa nilai pulangan bagi fungsi unpack()
ialah tatasusunan, jadi anda perlu menggunakan [1]
untuk mendapatkan rentetan yang tidak dibungkus.
Ringkasan
Dalam PHP, penukaran antara rentetan dan bait ialah operasi yang sangat biasa. Artikel ini memperkenalkan dua kaedah, iaitu menggunakan fungsi pack() untuk menukar rentetan kepada bait, dan menggunakan fungsi unpack() untuk menukar bait kepada rentetan. Dalam pembangunan sebenar, kita secara fleksibel boleh memilih kaedah yang sesuai untuk penukaran mengikut keperluan.
Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan php kepada bait. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!