首页 > 后端开发 > php教程 > 如何在 PHP 回调函数中访问外部变量?

如何在 PHP 回调函数中访问外部变量?

Mary-Kate Olsen
发布: 2024-12-14 20:33:41
原创
781 人浏览过

How Can I Access External Variables Inside PHP Callback Functions?

在回调函数中访问外部变量

在 PHP 中,通常需要将回调函数与在函数外部计算的变量结合使用范围。这种情况提出了一个问题:是否可以在回调中访问此类变量?

使用关键字和箭头函数

幸运的是,PHP 通过使用提供了解决方案关键词。您可以通过在回调定义前面加上 use 来从父作用域继承变量。例如:

$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
$avg = array_sum($arr) / count($arr);
$callback = function($val) use ($avg) { return $val < $avg; };

return array_filter($arr, $callback);
登录后复制

对于 PHP 7.4 及更高版本,箭头函数提供了更优雅的方法。箭头函数自动捕获外部变量:

$callback = fn($val) => $val < $avg;
登录后复制

在 array_filter 调用中,您可以直接使用箭头函数:

return array_filter($arr, fn($val) => $val < $avg);
登录后复制

通过利用 use 关键字或箭头函数,它变得简单在 PHP 的回调函数中访问外部变量。

以上是如何在 PHP 回调函数中访问外部变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板