首頁 >後端開發 >PHP問題 >PHP匿名函數可以做什麼用

PHP匿名函數可以做什麼用

青灯夜游
青灯夜游原創
2019-06-06 17:26:093710瀏覽

PHP匿名函數可以做什麼用

匿名函數(Anonymous functions),也叫閉包函數(closures),允許暫時建立一個沒有指定名稱的函數。

匿名函數的好處

1、非匿名函數在定義時就創建函數對象和作用域對象,以後及時未調用,也佔空間

2、匿名函數只有在呼叫時,才會建立函數物件和作用域物件。調用完後立即釋放,節省記憶體。

php中匿名函數的使用

1、作為回呼函數使用

<?php
echo preg_replace_callback(&#39;~-([a-z])~&#39;, function ($match) {
    return strtoupper($match[1]);
}, &#39;hello-world&#39;);
// 输出 helloWorld

2、作為變數賦值

<?php
$greet = function($name)
{
    printf("Hello %s\r\n", $name);
};
$greet(&#39;World&#39;);
$greet(&#39;PHP&#39;);

輸出:

PHP匿名函數可以做什麼用

3、 從父作用域繼承變數

<?php
$message = &#39;hello&#39;;
// 没有 "use"
$example = function () {
    var_dump($message);
};
echo $example();
// 继承 $message
$example = function () use ($message) {
    var_dump($message);
};
echo $example();

輸出:

PHP匿名函數可以做什麼用

以上是PHP匿名函數可以做什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多