Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menggunakan fungsi tanpa nama PHP?
Fungsi tanpa nama, juga dikenali sebagai fungsi penutupan, ialah jenis fungsi yang diperkenalkan dalam PHP 5.3 yang membolehkan fungsi ditakrifkan tanpa nama. Kelebihannya termasuk kesederhanaan kod, penciptaan dinamik dan skop setempat. Contoh biasa menggunakan fungsi tanpa nama termasuk menggunakannya dengan fungsi tatasusunan seperti array_filter() untuk melaksanakan logik penapisan yang lebih kompleks, seperti menapis tatasusunan berdasarkan sifat genap/ganjil nombor.
Cara menggunakan fungsi tanpa nama PHP
Fungsi tanpa nama, juga dikenali sebagai fungsi penutupan, ialah jenis fungsi yang diperkenalkan dalam PHP 5.3 yang membenarkan mentakrifkan fungsi tanpa nama. Ini berguna apabila anda perlu mencipta fungsi secara dinamik atau mencipta fungsi berskop setempat dalam fungsi bersarang.
Mencipta fungsi tanpa nama
Sintaks untuk mencipta fungsi tanpa nama adalah sangat mudah:
$anonFunc = function ($args) { // 函数主体 };
Sebagai contoh, fungsi tanpa nama berikut mengira jumlah dua nombor:
$sum = function ($a, $b) { return $a + $b; };
Memanggil fungsi tanpa nama fungsi tanpa nama berbanding memanggil fungsi biasa Dengan cara yang sama:
echo $sum(10, 20); // 输出:30Kelebihan menggunakan fungsi tanpa nama
Menggunakan array_filter() untuk mengisih tatasusunan
Fungsi tanpa nama boleh digunakan dengan fungsi tatasusunan (seperti array_filter()
) untuk melaksanakan logik penapisan yang lebih kompleks Contoh berikut menapis tatasusunan mengikut sifat genap/ganjil nombor:
$array = [1, 2, 3, 4, 5, 6, 7, 8]; $even = array_filter($array, function ($num) { return $num % 2 == 0; }); $odd = array_filter($array, function ($num) { return $num % 2 != 0; });
Kini, $even
akan mengandungi semua nombor genap dalam tatasusunan, manakala $odd
akan mengandungi semua nombor ganjil. array_filter()
) 一起使用,以实现更复杂的过滤逻辑。以下示例按数字的偶数/奇数属性过滤数组:
现在,$even
将包含数组中所有偶数,而 $odd
Atas ialah kandungan terperinci Bagaimana untuk menggunakan fungsi tanpa nama PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!