在 PHP 7.2.10 中,我value()
在 laravel 中的 Arr.php 中收到一个未捕获的错误。
我尝试搜索 PHP.net 手册,它不为名为 value 的函数返回任何内容。
例如在https://github.com/illuminate/support/blob/master/Arr.php 中找到的这个函数是什么值函数?
public static function first($array, callable $callback = null, $default = null)
{
if (is_null($callback)) {
if (empty($array)) {
return value($default);
}
foreach ($array as $item) {
return $item;
}
}
foreach ($array as $key => $value) {
if (call_user_func($callback, $value, $key)) {
return $value;
}
}
return value($default);
}
在 Illuminate/Support/helpers.php 中,您会找到定义:
if (! function_exists('value')) {
/**
* Return the default value of the given value.
*
* @param mixed $value
* @return mixed
*/
function value($value)
{
return $value instanceof Closure ? $value() : $value;
}
}
In Chinese: 如果 $value 是一个闭包,或者匿名函数,它会被执行并返回返回值。对于其他任何事情,它只会返回原始的 $value。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句