Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Lelaran tatasusunan dalam PHP8.0

Lelaran tatasusunan dalam PHP8.0

王林
王林asal
2023-05-14 09:10:35976semak imbas

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:

  1. Pengisytiharan jenis nilai pulangan array_map()

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.

  1. Parameter lulus penambahbaikan kaedah array_filter()

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.

  1. Jenis pengisytiharan kaedah array_reduce()

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.

  1. kaedah array_key_first() dan array_key_last()

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'

Dalam contoh di atas, kami menggunakan kaedah array_key_first() dan array_key_last() untuk Dapatkan nama kunci pertama dan terakhir bagi tatasusunan $data.

Selain kaedah baharu yang dinyatakan di atas, PHP8.0 juga mempunyai pengoptimuman prestasi dan penambahbaikan pengendalian ralat untuk beberapa kaedah, seperti kaedah in_array() dan array_search().

Ringkasnya, dalam PHP8.0, pengalaman lelaran tatasusunan adalah lebih mudah dan fleksibel, serta lebih berkuasa dan cekap. Pembangun boleh memilih kaedah yang sesuai untuk memproses data tatasusunan berdasarkan keperluan sebenar, menjadikan kod lebih piawai dan lebih mudah untuk diselenggara.

Atas ialah kandungan terperinci Lelaran tatasusunan dalam PHP8.0. 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