Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php cast array

php cast array

王林
王林asal
2023-05-22 19:48:08412semak imbas

Baru-baru ini dalam projek PHP saya, saya sering perlu melakukan penukaran jenis data. Terutama apabila saya memulangkan data daripada fungsi atau API, kadangkala saya perlu menukarnya kepada tatasusunan. Jadi saya mula meneliti cara melakukan penukaran jenis tatasusunan dalam PHP dan saya dapati banyak cara. Artikel ini membincangkan kaedah ini dan menyediakan beberapa contoh untuk membantu anda memahaminya dengan lebih baik.

  1. Gunakan (tatasusunan) untuk penukaran jenis

Ini mungkin kaedah yang paling mudah dan paling biasa. Jika anda ingin menukar pembolehubah kepada tatasusunan, cuma tambahkan (tatasusunan) kepada pembolehubah. Sebagai contoh, kod berikut boleh menukar objek kepada tatasusunan:

$myObject = new stdClass();
$myObject->name = 'Tom';
$myObject->age = 30;
$myArray = (array) $myObject;
print_r($myArray);

Hasil output ialah:

Array
(
    [name] => Tom
    [age] => 30
)

Kaedah ini juga berfungsi untuk jenis data lain, seperti rentetan, integer, titik terapung nombor, dsb.

  1. Gunakan fungsi tatasusunan() untuk menukar

Cara lain untuk menukar jenis data kepada tatasusunan ialah menggunakan fungsi tatasusunan() PHP. Fungsi ini menerima berbilang parameter dan menetapkannya sebagai elemen tatasusunan. Anda boleh menggunakan fungsi ini untuk menukar jenis data lain kepada tatasusunan. Contohnya:

$myString = "Hello World";
$myArray = array($myString);
print_r($myArray);

Outputnya ialah:

Array
(
    [0] => Hello World
)

Anda juga boleh menghantar berbilang nilai sebagai parameter kepada fungsi tatasusunan() untuk mencipta tatasusunan berbilang elemen. Contohnya:

$myArray = array("Tom", "Jerry", "Spike");
print_r($myArray);

Hasil output ialah:

Array
(
    [0] => Tom
    [1] => Jerry
    [2] => Spike
)
  1. Gunakan (tatasusunan) $variable untuk penukaran

Cara lain untuk menukar jenis data kepada tatasusunan Cara untuk melakukan ini ialah menggunakan sintaks (array) $variable. Sintaks ini lebih kompleks sedikit daripada kaedah pertama, tetapi ia lebih berguna untuk jenis data tertentu. Sebagai contoh, jika anda ingin menukar rentetan JSON kepada tatasusunan, anda boleh menggunakan kod berikut:

$jsonString = '{"name": "Tom", "age": 30}';
$myArray = (array) json_decode($jsonString);
print_r($myArray);

Outputnya ialah:

Array
(
    [name] => Tom
    [age] => 30
)
  1. Gunakan fungsi cast_array() untuk menukar

Cara terakhir untuk menukar jenis data kepada tatasusunan ialah menggunakan fungsi cast_array() PHP. Fungsi ini bukan fungsi terbina dalam, anda perlu memasang sambungan PECL untuk menggunakannya. Walau bagaimanapun, jika anda menggunakan PHP versi 7.2 atau lebih tinggi, fungsi ini telah ditamatkan. Oleh itu, dalam versi terkini, anda harus menggunakan fungsi array_cast().

Tidak kira apa fungsinya, semuanya menggunakan kaedah yang sama. Mereka menerima pembolehubah sebagai hujah dan menukarnya kepada tatasusunan. Contohnya:

// cast_array()函数
$myString = "Hello World";
$myArray = cast_array($myString);
print_r($myArray);

// array_cast()函数
$myInteger = 123;
$myArray = array_cast($myInteger);
print_r($myArray);

Outputnya ialah:

Array
(
    [0] => Hello World
)

Array
(
    [0] => 123
)

Ringkasan

Dalam PHP, terdapat banyak cara untuk menukar jenis data kepada tatasusunan. Kaedah ini termasuk menggunakan fungsi (array), array(), (array) $variable dan cast_array(). Bergantung pada keperluan dan keutamaan peribadi anda, anda boleh memilih kaedah yang sesuai. Tidak kira kaedah yang anda pilih, anda boleh menggunakannya untuk menukar pelbagai jenis data kepada tatasusunan dengan mudah dan mudah.

Atas ialah kandungan terperinci php cast array. 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