Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar tatasusunan php kepada nilai heksadesimal

Bagaimana untuk menukar tatasusunan php kepada nilai heksadesimal

PHPz
PHPzasal
2023-04-24 15:48:47699semak imbas

PHP ialah bahasa pembangunan web yang digunakan secara meluas yang boleh mengendalikan pelbagai jenis data, termasuk tatasusunan. Tatasusunan ialah salah satu jenis data yang paling biasa digunakan dalam PHP dan membolehkan anda menyimpan berbilang item data dalam satu pembolehubah. Dalam PHP, anda boleh menggunakan tatasusunan untuk menyimpan dan memanipulasi data heksadesimal.

Dalam artikel ini, kami akan menerangkan cara menukar tatasusunan PHP kepada tatatanda heksadesimal. Untuk lebih memahami artikel ini, anda perlu mempunyai pengetahuan asas tentang pengaturcaraan PHP dan pemahaman pengekodan heksadesimal.

Asas Tatasusunan PHP

Dalam PHP, tatasusunan ialah pembolehubah jenis komposit yang boleh menyimpan berbilang nilai. Nilai tatasusunan boleh terdiri daripada sebarang jenis, termasuk rentetan, nombor, Boolean dan objek. Dalam PHP, terdapat dua jenis tatasusunan: tatasusunan diindeks dan tatasusunan bersekutu.

Susun Berindeks - Setiap elemen dalam tatasusunan mempunyai indeks angka yang unik.

Tatasusunan bersekutu - Setiap elemen dalam tatasusunan mempunyai kunci unik.

Array boleh dibuat menggunakan fungsi array() atau diisytiharkan terus. Berikut ialah contoh mencipta tatasusunan diindeks:

$myArray = array("apple", "banana", "orange");

Contoh di atas mencipta tatasusunan diindeks 3 elemen, setiap satu dengan indeks angka yang unik.

Berikut ialah contoh mencipta tatasusunan bersekutu:

$myArray = array("name"=>"Tom", "age"=>25, "gender"=>"male");

Contoh di atas mencipta tatasusunan bersekutu 3 elemen, setiap satu dengan kunci rentetan yang unik.

Tukar tatasusunan PHP kepada perenambelasan

Dalam PHP, tatasusunan boleh ditukar kepada jenis data lain dalam pelbagai cara, seperti rentetan, integer, nombor titik terapung, dsb. Bahagian ini menerangkan cara menukar tatasusunan kepada perwakilan heksadesimal.

Dalam PHP, anda boleh menggunakan fungsi unpack() untuk menukar data binari kepada perenambelasan. Fungsi ini menerima dua parameter: format dan data binari yang akan ditukar. Format menentukan jenis data binari yang hendak ditukar, seperti integer 32-bit atau nombor titik terapung 64-bit, dsb. Berikut ialah contoh:

$data = pack("C*", 65, 66, 67, 68);
$hex = unpack("H*", $data)[1];

Contoh di atas menukar tatasusunan (65,66,67,68) kepada data kod ASCII (ABCD) dan kemudian menukarnya kepada perenambelasan (41424344 ).

Walau bagaimanapun, fungsi ini hanya berfungsi dengan data binari dan tidak boleh terus menukar tatasusunan PHP kepada perwakilan heksadesimal. Oleh itu, kita perlu menukar tatasusunan kepada data binari dan kemudian menukarnya kepada perwakilan heksadesimal.

Terdapat pek fungsi terbina dalam() dalam PHP, yang boleh membungkus pelbagai jenis data ke dalam rentetan binari. Ia menerima dua parameter: format dan data untuk dibungkus. Format menentukan jenis dan saiz data, seperti integer 32-bit atau nombor titik terapung 64-bit. Data yang akan dibungkus boleh terdiri daripada sebarang jenis.

Dalam artikel ini, kami akan menggunakan format "C*" untuk membungkus tatasusunan ke dalam data binari. Format ini bermakna setiap elemen dalam tatasusunan dianggap sebagai aksara yang tidak ditandatangani dan dibungkus ke dalam data binari. Berikut ialah contoh:

$data = pack("C*", ...$myArray);
$hex = unpack("H*", $data)[1];

Contoh di atas membungkus tatasusunan $myArray ke dalam data binari dan kemudian menukarnya kepada perwakilan perenambelasan.

Contoh kod lengkap adalah seperti berikut:

$myArray = array(65, 66, 67, 68);
$data = pack("C*", ...$myArray);
$hex = unpack("H*", $data)[1];
echo $hex;

Laksanakan kod di atas, dan hasil output ialah: "41424344", iaitu nombor perenambelasan yang ditukar daripada tatasusunan $myArray.

Kesimpulan

Dalam PHP, tatasusunan ialah jenis data yang sangat berguna yang boleh anda gunakan untuk menyimpan dan memanipulasi pelbagai jenis data. Dalam artikel ini, kami membincangkan cara menukar tatasusunan PHP kepada perwakilan heksadesimal. Walaupun PHP tidak mempunyai fungsi untuk menukar tatasusunan secara langsung kepada perenambelasan, kita boleh menggunakan fungsi pack() dan unpack() untuk menukar tatasusunan kepada data binari dan kemudian menukarnya kepada perwakilan perenambelasan.

Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan php kepada nilai heksadesimal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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