Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menyalin tatasusunan dengan php

Bagaimana untuk menyalin tatasusunan dengan php

PHPz
PHPzasal
2023-04-20 15:03:451692semak imbas

Dalam PHP, menyalin tatasusunan ialah salah satu operasi yang sangat biasa Biasanya kita boleh menggunakan beberapa fungsi terbina dalam untuk menyelesaikan operasi ini.

Kaedah 1: Gunakan pengendali tugasan

Gunakan pengendali tugasan "=" untuk menetapkan nilai satu tatasusunan kepada tatasusunan lain. Jika kita ingin mencipta salinan berasingan tatasusunan asal, kita boleh menggunakan kod berikut:

$originalArray = array("apple", "banana", "cherry");
$newArray = $originalArray;

Dalam kod di atas, pembolehubah $newArray akan mengandungi semua nilai $originalArray. Operasi ini dilakukan dengan menghantar salinan rujukan $originalArray kepada $newArray. Ini bermakna jika kita menukar nilai dalam $originalArray, nilai yang sepadan dalam $newArray akan berubah dengan sewajarnya. Ini kerana kedua-duanya merujuk kepada alamat memori yang sama. Jika kita memerlukan salinan bebas sepenuhnya, kita boleh menggunakan kaedah dua.

Kaedah 2: Gunakan fungsi array_slice

Kaedah 2 menggunakan fungsi array_slice untuk mendapatkan subset tatasusunan untuk menjana tatasusunan baharu. Ia boleh dicapai dengan cara berikut:

$originalArray = array("apple", "banana", "cherry");
$newArray = array_slice($originalArray, 0);

Dalam kod ini, parameter kedua fungsi array_slice ialah indeks permulaan, di sini kita masukkan 0 untuk memintas keseluruhan tatasusunan. Parameter ketiga ialah panjang pemintasan Kami belum menetapkannya di sini Nilai lalai ialah panjang tatasusunan.

Kod di atas akan mencipta tatasusunan baharu yang bebas sepenuhnya Jika $originalArray diubah suai, $newArray tidak akan terjejas.

Kaedah 3: Gunakan fungsi json_encode dan json_decode

Kaedah 3 mencipta tatasusunan serba baharu dengan mengekod tatasusunan asal ke dalam rentetan JSON dan kemudian menyahkodnya:

$originalArray = array("apple", "banana", "cherry");
$newArray = json_decode(json_encode($originalArray));

Dalam kod ini, kami menggunakan fungsi json_encode untuk menukar $originalArray menjadi rentetan JSON, dan kemudian menggunakan fungsi json_decode untuk menyahkodnya menjadi tatasusunan baharu.

Kaedah ini mencipta tatasusunan baharu kerana proses penyahkodan tidak dilakukan secara rujukan. Ini juga bermakna jika nilai dalam tatasusunan asal ialah objek atau tatasusunan, ia juga akan disalin.

Ringkasnya, di atas adalah tiga kaedah biasa untuk menyalin tatasusunan dalam PHP. Kita boleh menggunakan kaedah yang berbeza mengikut keperluan tertentu. Pengendali tugasan dan fungsi array_slice kedua-duanya mencipta tatasusunan baharu, manakala fungsi json_encode dan json_decode menyalin objek dan tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk menyalin tatasusunan dengan php. 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