Rumah > Artikel > pembangunan bahagian belakang > Lelaran tatasusunan dalam PHP8.0
Dengan keluaran PHP8.0, kaedah lelaran tatasusunan juga telah menerima beberapa penambahbaikan dan peningkatan baharu. Penambahbaikan ini bukan sahaja memudahkan pembangun mengendalikan data tatasusunan, tetapi juga meningkatkan kebolehbacaan dan prestasi kod.
Dalam artikel ini, kita akan membincangkan kaedah lelaran tatasusunan baharu dalam PHP8.0, termasuk yang berikut:
Dalam PHP8.0, kaedah array_map() mempunyai pengisytiharan jenis nilai pulangan baharu Pembangun boleh menambah ": tatasusunan" di hadapan tandatangan kaedah untuk menentukan jenis nilai pulangan sebagai tatasusunan.
Contohnya:
peta fungsi(array $data): tatasusunan {
return array_map(static fn($x) => $x + 1, $data);
}
Dalam contoh di atas, kaedah map() menerima tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu selepas menambah setiap elemen sebanyak 1.
Dalam PHP8.0, parameter kaedah array_filter() boleh diluluskan melalui rujukan, supaya mereka boleh diubah suai di dalam data Tatasusunan fungsi panggil balik.
Contohnya:
$data = [1, 2, 3, 4, 5];
$even = [];
fungsi is_even($x) {
global $even; if ($x % 2 === 0) { $even[] = $x; return true; } return false;
}
array_filter($data, 'is_even');
var_dump($even); // [2, 4]
Dalam contoh di atas, kami takrifkan a Fungsi is_even() mengembalikan benar jika parameter yang diluluskan ialah nombor genap, jika tidak ia mengembalikan palsu. Di dalam fungsi is_even(), kami juga mengubah suai nilai tatasusunan $even, yang digunakan untuk menyimpan semua elemen genap.
Kaedah array_reduce() dalam PHP8.0 juga mempunyai pengisytiharan jenis nilai pulangan baharu, yang boleh ditambah oleh pembangun di hadapan tandatangan kaedah Tambah ": bercampur" untuk menentukan jenis nilai pulangan.
Contohnya:
function sum(array $data): int {
return array_reduce($data, static fn($acc, $x) => $acc + $x, 0);
}
Dalam contoh di atas, kaedah sum() menerima tatasusunan sebagai hujah dan mengembalikan jumlah semua elemen.
Dalam PHP8.0, kita boleh menggunakan kaedah array_key_first() dan array_key_last() untuk mendapatkan array pertama dan nama kunci terakhir. Kedua-dua kaedah ini amat sesuai untuk kod yang perlu beroperasi pada tatasusunan berdasarkan kekunci.
Contohnya:
$data = ['foo' => 1, 'bar' => 2, 'baz' => array_key_first ($data); // 'foo'
$last_key = array_key_last($data); // 'baz'
Atas ialah kandungan terperinci Lelaran tatasusunan dalam PHP8.0. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!