首頁 >後端開發 >php教程 >如何在 PHP 中的匿名函數中存取外部變數?

如何在 PHP 中的匿名函數中存取外部變數?

Patricia Arquette
Patricia Arquette原創
2024-11-11 12:36:02817瀏覽

How to Access External Variables within Anonymous Functions in PHP?

使用匿名函數作為參數來存取外部變數

問題陳述:

您有一個可重用的函數fetch 來處理資料庫行並允許您使用匿名函數對每一行執行操作。但是,您需要將所有行中的特定欄位連接到匿名函數中的單一變數中。

解決方案:

要存取匿名函數中的外部變數函數時,可以使用 use 關鍵字。這將從父作用域繼承變數。

範例:

$result = '';
fetch("SELECT title FROM tbl", function($r) use (&$result) {
   $result .= $r['title'];
});

工作原理:

  • use 關鍵字用在匿名函數的參數內list。
  • 它宣告變數$result應該從父作用域繼承。
  • 透過在use語句中使用&符號,變數透過引用傳遞,允許匿名函數來修改它的value.

注意:

  • use 變數是早期綁定的,這意味著它們在聲明匿名函數時使用變數的值,而不是在呼叫時。
  • 如果在匿名函數呼叫後修改變數的值,這可能會導致意外行為已定義。

以上是如何在 PHP 中的匿名函數中存取外部變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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