Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menggantikan nilai dalam tatasusunan dalam php

Bagaimana untuk menggantikan nilai dalam tatasusunan dalam php

PHPz
Lepaskan: 2023-04-21 09:35:32
asal
1044 orang telah melayarinya

Operasi tatasusunan adalah salah satu tugas yang sangat biasa apabila pengaturcaraan dalam PHP. Antaranya, menggantikan nilai dalam tatasusunan juga merupakan salah satu operasi biasa.

Dalam PHP, anda boleh menggunakan dua fungsi untuk menggantikan nilai dalam tatasusunan: array_replace() dan array_replace_recursive(). Di bawah, kami akan memperkenalkan penggunaan dan langkah berjaga-jaga kedua-dua fungsi ini masing-masing.

1. array_replace()

Fungsi array_replace() adalah untuk menggantikan nilai satu atau lebih tatasusunan ke dalam tatasusunan asal. Sintaksnya adalah seperti berikut:

mixed array_replace ( array $array1 , array $array2 [, array $... ] )
Salin selepas log masuk

Antaranya, $array1 ialah array asal, $array2 ialah array yang perlu diganti dalam array asal, $... boleh digunakan apabila terdapat berbilang tatasusunan yang perlu diganti.

Di bawah, kami menggunakan contoh kod berikut untuk menunjukkan penggunaan fungsi ini:

<?php
$array1 = array("a" => "red", "b" => "green");
$array2 = array("a" => "blue", "yellow");
$result = array_replace($array1, $array2);
print_r($result);
?>
Salin selepas log masuk

Hasil output adalah seperti berikut:

Array
(
    [a] => blue
    [b] => green
    [0] => yellow
)
Salin selepas log masuk

Seperti yang boleh dilihat, tatasusunan asal $ Nilai kunci = 'a' dalam tatasusunan1 digantikan dengan nilai kunci = 'a' dalam $array2, dan tiada kunci dalam $array2, tetapi ditambah terus dengan subskrip angka, jadi a elemen baharu No. 0 dijana: 'kuning'.

2. array_replace_recursive()

array_replace_recursive() fungsi adalah serupa dengan array_replace(), yang turut menggantikan nilai satu atau lebih tatasusunan ke dalam tatasusunan asal. Perbezaannya ialah jika tatasusunan bersarang berbilang dimensi, fungsi secara rekursif menggantikan nilai yang sepadan bagi semua sub-tatasusunan. Sintaks adalah seperti berikut:

mixed array_replace_recursive ( array $array1 , array $array2 [, array $... ] )
Salin selepas log masuk

Di bawah, kami menggunakan contoh kod berikut untuk menunjukkan penggunaan fungsi ini:

<?php
$array1 = array("a" => array("red"), "b" => array("green", "blue"));
$array2 = array("a" => array("yellow"), "b" => array("black"));
$result = array_replace_recursive($array1, $array2);
print_r($result);
?>
Salin selepas log masuk

Hasil output adalah seperti berikut:

Array
(
    [a] => Array
        (
            [0] => yellow
        )

    [b] => Array
        (
            [0] => black
            [1] => blue
        )

)
Salin selepas log masuk

Dapat dilihat bahawa nilai yang sepadan dalam kunci = 'a' dan kunci = 'b' dalam tatasusunan asal $array1 digantikan dengan nilai dalam $array2.

3. Nota

Apabila menggunakan fungsi array_replace() dan array_replace_recursive(), anda perlu memberi perhatian kepada perkara berikut:

  1. Jika kekunci dalam tatasusunan adalah sama, Tatasusunan terakhir akan menggantikan nilai tatasusunan sebelumnya, dan pasangan nilai kunci yang sepadan dengan tatasusunan sebelumnya akan dipadamkan.
  2. Jika kunci dalam tatasusunan berbeza, tatasusunan berikutnya akan ditambahkan pada tatasusunan sebelumnya dan nilai tatasusunan sebelumnya tidak akan dipadamkan.
  3. Apabila menggunakan fungsi array_replace_recursive(), jika tatasusunan yang digantikan mengandungi tatasusunan berbilang dimensi, fungsi tersebut akan menggantikan nilai yang sepadan bagi semua sub-tatasusunan secara rekursif. Jika anda tidak mahu menggantikan secara rekursif, anda boleh menggunakan fungsi array_replace().

Secara amnya, operasi tatasusunan dalam PHP adalah sangat fleksibel, dan operasi penggantian tatasusunan juga boleh diselesaikan dengan mudah menggunakan beberapa fungsi tatasusunan. Penggunaan dan langkah berjaga-jaga kedua-dua fungsi di atas juga sangat mudah. ​​Saya harap artikel ini akan membantu pengaturcaraan PHP anda.

Atas ialah kandungan terperinci Bagaimana untuk menggantikan nilai dalam tatasusunan 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