Rumah >pembangunan bahagian belakang >tutorial php >Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

WBOY
WBOYasal
2021-10-15 16:02:494055semak imbas

Dalam artikel sebelumnya, saya membawakan anda "Cara menggunakan fungsi panggil balik PHP (contoh terperinci)". pada fungsi tanpa nama asas dalam fungsi PHP dan apakah mata pengetahuan yang patut diberi perhatian. Semoga ia membantu semua orang!

Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

Fungsi Tanpa Nama PHP

Apakah fungsi tanpa nama?

Fungsi tanpa nama juga dipanggil fungsi penutupan

Apakah itu penutupan? Penutupan ialah blok kod yang boleh mempunyai pembolehubah bebas; pembolehubah ini tidak ditakrifkan dalam kod ini atau di tempat lain secara global, tetapi ditakrifkan dalam persekitaran di mana blok kod ditakrifkan, iaitu pembolehubah tempatan. Perkataan "penutupan" berasal daripada gabungan blok kod yang akan dilaksanakan dan persekitaran pengiraan yang menyediakan pengikatan untuk pembolehubah bebas. Oleh kerana pembolehubah bebas terkandung dalam blok kod, pembolehubah bebas ini dan objek yang dirujuknya tidak dikeluarkan. Malah, kita boleh meletakkannya dalam istilah orang awam: fungsi kanak-kanak boleh menggunakan pembolehubah tempatan dalam fungsi induk Tingkah laku ini dipanggil penutupan. Secara teorinya, penutupan dan fungsi tanpa nama adalah konsep yang berbeza, tetapi PHP menganggapnya sebagai konsep yang sama Apabila ia melibatkan penutupan, ia bermaksud fungsi tanpa nama, dan apabila ia berkaitan dengan fungsi tanpa nama, ia bermakna penutupan.

Maksudnya, fungsi tanpa nama fungsi. PHP boleh mencipta fungsi tanpa nama, dan fungsi tanpa nama kebanyakannya digunakan dalam fungsi panggil balik.

Fungsi tanpa nama boleh memberikan tugasan secara langsung kepada pembolehubah Fungsi tanpa nama masih berfungsi.

Struktur sintaks untuk mencipta pembolehubah tanpa nama adalah seperti berikut:

function (参数列表) {
    ...
}

Fungsi tanpa nama sangat serupa dengan fungsi biasa dan juga boleh menerima parameter Perbezaannya ialah fungsi tanpa nama Nama fungsi diabaikan daripada pengisytiharan.

Contohnya adalah seperti berikut:

<?php
    $a = function (){
        return &#39;好好学习,天天向上&#39;;
    };
    echo $a();
?>

Hasil keluaran:

Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

Seperti yang dapat dilihat daripada contoh di atas , fungsi tanpa nama ialah Ia digunakan sebagai nilai pembolehubah Pada masa ini, PHP secara automatik akan menukar ungkapan ini kepada ungkapan kelas terbina dalam Kaedah menetapkan penutupan kepada pembolehubah adalah sama seperti penugasan pembolehubah biasa sintaks Pada akhir, anda juga mesti menambah Enter ";" (titik bertitik).

Seterusnya, mari kita lihat dua gabungan fungsi tanpa nama

  • Fungsi anonymous fungsi pembolehubah

<?php
$a = function($b)
{
 echo $b.&#39;好好学习&#39;;
};
$a(&#39;福如东海&#39;);
$a(&#39;寿比南山&#39;);
?>

Hasil keluaran:

Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

Ibu fungsi dalam contoh di atas tidak mempunyai nama fungsi dan dipanggil oleh kurungan $a tambah Ini ialah pembolehubah Fungsian fungsi tanpa nama.

  • Fungsi tanpa nama panggil balik

Dalam penggunaan sebenar kami, fungsi tanpa nama sering dianggap sebagai fungsi atau Penggunaan kaedah panggilan balik, bukan sahaja fungsi panggil balik, fungsi tanpa nama digunakan dalam banyak fungsi PHP Kod sampel adalah seperti berikut:

<?php
    $a   = [1,2,3,4,5,6];
    $b = array_map(function ($c) {
        return $c*$c;
    }, $a);
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($b);
?>

Hasil keluaran:

Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci)

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Fahami fungsi tanpa nama PHP dalam masa lima minit (contoh terperinci). 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