Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk batch mengubah suai nilai tatasusunan dalam php

Bagaimana untuk batch mengubah suai nilai tatasusunan dalam php

PHPz
PHPzasal
2023-04-20 13:48:36836semak imbas

PHP ialah bahasa pengaturcaraan bahagian pelayan yang digunakan secara meluas yang sering digunakan untuk menulis halaman web dinamik dan aplikasi web. Dalam PHP, anda boleh menggunakan tatasusunan untuk mengatur dan mengurus data. Apabila anda perlu mengubah suai kumpulan nilai tatasusunan, PHP menyediakan beberapa cara berbeza untuk menyelesaikan tugas ini.

1. Gunakan gelung foreach untuk melintasi tatasusunan dan mengubah suai nilai

Menggunakan gelung foreach untuk melintasi tatasusunan dan mengubah suai setiap elemen ialah kaedah yang mudah dan berkesan. Berikut ialah contoh kod:

$numbers = array(1, 2, 3, 4, 5);
foreach ($numbers as &$number) {
   $number = $number * 2;
}

print_r($numbers);

Kod di atas akan mengeluarkan hasil sebagai:

Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
    [4] => 10
)

Dalam kod di atas, kami telah menggunakan simbol & (simbol petikan) untuk dapatkan setiap rujukan A kepada elemen tatasusunan, supaya kita boleh mengubah suai secara langsung nilai elemen dalam badan gelung.

2. Gunakan fungsi array_map()

PHP menyediakan fungsi array_map() untuk melaksanakan operasi pengubahsuaian kelompok. Berikut ialah contoh kod:

$numbers = array(1, 2, 3, 4, 5);
function multiply($number) {
   return $number * 2;
}
$numbers = array_map("multiply", $numbers);

print_r($numbers);

Kod di atas akan mengeluarkan hasil sebagai:

Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
    [4] => 10
)

Dalam kod di atas, kami mentakrifkan fungsi multiply(), yang digunakan Darab setiap elemen dengan 2. Kami kemudian memanggil fungsi ini menggunakan fungsi array_map() dan menyimpan hasilnya semula ke dalam tatasusunan asal.

3. Gunakan fungsi array_walk()

PHP juga menyediakan fungsi array_walk(), yang boleh mengulang tatasusunan dan melaksanakan fungsi tersuai pada setiap elemen. Berikut ialah contoh kod:

$numbers = array(1, 2, 3, 4, 5);
function multiply(&$value, $key) {
   $value *= 2;
}
array_walk($numbers, "multiply");

print_r($numbers);

Kod di atas akan mengeluarkan hasil sebagai:

Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
    [4] => 10
)

Dalam kod di atas, kami mentakrifkan fungsi multiply(), yang menggunakan & simbol (simbol rujukan) untuk mendapatkan rujukan setiap elemen. Kami kemudian memanggil fungsi ini menggunakan fungsi array_walk(), yang akan bertindak pada setiap elemen dalam tatasusunan asal.

4. Gunakan fungsi array_fill() dan array_keys()

Gunakan fungsi array_fill() dan array_keys() untuk mencapai kesan mengubah suai nilai array dalam kelompok. Berikut ialah contoh kod:

$numbers = array_fill(0, 5, 1);
$keys = array_keys($numbers);
foreach ($keys as $key) {
   $numbers[$key] *= 2;
}

print_r($numbers);

Kod di atas akan mengeluarkan hasilnya sebagai:

Array
(
    [0] => 2
    [1] => 2
    [2] => 2
    [3] => 2
    [4] => 2
)

Dalam kod di atas, kita mula-mula menggunakan fungsi array_fill() untuk mencipta tatasusunan saiz 5 tatasusunan dan tetapkan nilai setiap elemen kepada 1. Kami kemudiannya menggunakan fungsi array_keys() untuk mendapatkan kunci elemen tatasusunan dan menggunakan gelung foreach untuk mengulangi kekunci tersebut. Dalam badan gelung, kami mendarabkan nilai setiap elemen dengan 2 untuk mencapai tujuan kumpulan mengubah suai tatasusunan.

Ringkasan

Artikel ini memperkenalkan empat cara untuk mengubah suai nilai tatasusunan dalam kelompok dalam PHP: menggunakan gelung foreach untuk melintasi tatasusunan dan mengubah suai nilai, menggunakan fungsi array_map(), menggunakan fungsi array_walk() dan menggunakan array_fill( ) digabungkan dengan fungsi array_keys(). Kaedah ini adalah mudah dan berkesan Anda boleh memilih salah satu daripadanya mengikut keperluan anda untuk mencapai tugas menyusun tatasusunan kelompok.

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