例如我有以下代码:
function a($param)
{
function b()
{
echo $param;
}
b();
}
a("Hello World!");
这会引发 E_NOTICE 错误,因为 $param 当然是未定义的(在 b() 中)。
我不能将 $param 传递给 b() 因为 b() 应该是 preg_replace_callback() 的回调函数。 所以我有了将 $param 保存在 $GLOBALS 中的想法。
有没有更好的解决方案?
最佳答案
如果您使用的是 PHP 5.3,您可以使用 anonymous function使用 use
关键字代替:
<?php
function a($param)
{
$b = function() use ($param)
{
echo $param;
};
$b();
}
a("Hello World!");
关于php - 如何访问 "parent"函数的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6718205/