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

如何在 PHP 中存取回呼函數外部定義的變數?

Susan Sarandon
Susan Sarandon原創
2024-12-13 08:12:11845瀏覽

How Can I Access Variables Defined Outside Callback Functions in PHP?

訪問回調函數之外計算的變數

使用回調函數時,可能需要使用在函數作用域之外計算的變數。 use 關鍵字為這項挑戰提供了解決方案。

使用「use」關鍵字

要在回調函數中存取外部變量,可以使用 use 關鍵字。該關鍵字可讓您聲明希望從父作用域繼承的變數。例如,如果您在回調之外計算了平均變數($avg),則可以透過包含以下內容在函數內使用它:

$callback = function($val) use ($avg) { return $val < $avg; };

取代:箭頭函數(PHP 7.4)

箭頭函數提供了另一種定義匿名函數的方法。它們會自動從周圍範圍捕獲變量,從而無需使用 use 關鍵字。因此,使用我們前面的範例,您可以編寫:

$callback = fn($val) => $val < $avg;

在數組操作中整合回調函數

要將回調函數合併到數組操作操作中,例如作為array_filter,您可以執行以下操作:

$filtered_array = array_filter($arr, fn($val) => $val < $avg);

此方法使您能夠根據在回調函數之外計算的變量,為您的 PHP 開發提供更大的靈活性。

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

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