Bagaimana untuk Menukar Rentetan kepada Perduaan dan Kembali dalam PHP?

DDD
Lepaskan: 2024-11-04 03:52:30
asal
675 orang telah melayarinya

How to Convert Strings to Binary and Back in PHP?

Menukar Perduaan dan Rentetan dalam PHP: Panduan Komprehensif

Apabila bekerja dengan data dalam PHP, selalunya perlu menukar antara format yang berbeza. Satu penukaran biasa adalah antara rentetan dan binari. Sama ada untuk menyimpan data dengan selamat atau mengoptimumkan prestasi, memahami cara menukar antara format ini adalah penting.

Masalah:

Cara menukar rentetan kepada binari dan kemudian menukarnya kembali kepada rentetan dalam perpustakaan PHP standard? Ini adalah keperluan biasa untuk penyimpanan dan manipulasi data yang selamat.

Penyelesaian:

Tidak seperti sesetengah bahasa pengaturcaraan, PHP tidak mempunyai fungsi terbina dalam untuk menukar terus rentetan kepada binari. Walau bagaimanapun, gabungan fungsi pack() dan base_convert() boleh mencapai kefungsian ini.

Binary to String:

Untuk menukar rentetan binari kembali kepada rentetan asalnya, kita boleh menggunakan pack () dan base_convert(). Fungsi pack() mengambil rentetan format dan rentetan data binari dan menggabungkannya untuk mencipta rentetan. Dalam kes kami, rentetan format ialah 'H*', yang menunjukkan rentetan heksadesimal. Fungsi base_convert() menukar rentetan dari satu pangkalan ke pangkalan yang lain. Dalam kes ini, kami menukar rentetan heksadesimal kepada set aksara ASCII:

<code class="php">// Convert binary into a string
$string = pack('H*', base_convert('0101001101110100011000010110001101101011', 2, 16));</code>
Salin selepas log masuk

String kepada Binari:

Untuk menukar rentetan kepada binari, kita boleh menggunakan unpack() dan base_convert( ). Fungsi unpack() mengambil rentetan format dan rentetan dan mengekstrak data daripada rentetan mengikut format yang ditentukan. Dalam kes kami, kami menentukan format 'H*' untuk mengekstrak data heksadesimal. Fungsi base_convert() menukar rentetan dari satu pangkalan ke pangkalan yang lain. Di sini, kita menukar rentetan ASCII kepada rentetan perenambelasan, yang mewakili perwakilan binari:

<code class="php">// Convert a string into binary
$binary = unpack('H*', 'Stack');
echo base_convert($binary[1], 16, 2);</code>
Salin selepas log masuk

Contoh:

Mari kita letakkan semuanya bersama contoh:

<code class="php">// Convert "Stack" to binary
$binary = unpack('H*', 'Stack');
$binaryString = base_convert($binary[1], 16, 2);
echo "Binary: $binaryString\n";

// Convert binary back to "Stack"
$asciiString = pack('H*', base_convert($binaryString, 2, 16));
echo "String: $asciiString\n";</code>
Salin selepas log masuk

Output:

Binary: 0101001101110100011000010110001101101011
String: Stack
Salin selepas log masuk

Dengan menggunakan fungsi ini, kami boleh menukar antara rentetan dan binari dengan berkesan dalam PHP. Pengetahuan ini tidak ternilai untuk penyulitan data, manipulasi fail dan pelbagai tugas lain.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan kepada Perduaan dan Kembali dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan