Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mencipta fungsi tanpa nama fungsi PHP?

Bagaimana untuk mencipta fungsi tanpa nama fungsi PHP?

WBOY
WBOYasal
2024-04-10 11:18:01360semak imbas

Fungsi tanpa nama (penutupan) membenarkan fungsi ditakrifkan tanpa mengisytiharkan fungsi yang dinamakan, untuk fungsi sementara atau panggil balik. Sintaks: $anon_func = function (senarai parameter) {function body}; Contohnya: tapis nombor genap: $anon_func = function($num) { return $num % 2 == 0;}; $even_numbers = array_filter($numbers, $anon_func);

PHP 函数的匿名函数如何创建?

Penciptaan fungsi tanpa nama PHP

Fungsi tanpa nama juga dipanggil penutupan, yang membolehkan fungsi ditakrifkan tanpa mengisytiharkan fungsi yang dinamakan. Fungsi tanpa nama biasanya digunakan apabila fungsi sementara atau fungsi panggil balik diperlukan.

Syntax

Sintaks fungsi tanpa nama dalam PHP adalah seperti berikut:

$anon_func = function (参数列表) {
  // 函数体
};

Parameter dan nilai pulangan

Sama seperti fungsi biasa, fungsi tanpa nama boleh menerima parameter. Badan fungsi disertakan dalam kurungan {}.

Kes praktikal

Berikut ialah contoh menggunakan fungsi tanpa nama untuk menapis tatasusunan:

$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

$even_numbers = array_filter($numbers, function($num) {
  return $num % 2 == 0;
});

print_r($even_numbers); // 输出:[2, 4, 6, 8, 10]

Dalam contoh ini, kami mencipta fungsi tanpa nama yang menerima nombor $num dan mengembalikan nilai boolean, yang bermaksud Sama ada nombor adalah genap. Fungsi array_filter() kemudian menggunakan fungsi tanpa nama ini untuk menapis array $numbers, mengekalkan hanya elemen yang memenuhi syarat fungsi.

Atas ialah kandungan terperinci Bagaimana untuk mencipta fungsi tanpa nama fungsi 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