php数组过滤器和变量的问题

php数组过滤器和变量的问题,php,Php,我正在尝试替换(工作)数组筛选器中的日期 $launch = date('Y-m-d H', $dtko['timestamp']).':00'; $day_3 = array_filter($check_day_3, function($obj){return $obj['time'] == '2017-02-25 15:00';}); 使用变量($launch): 我没有收到任何错误消息,但它不起作用。 echo$launch准确显示2017-02-25 15:00 想法将是伟大的!谢谢

我正在尝试替换(工作)数组筛选器中的日期

$launch = date('Y-m-d H', $dtko['timestamp']).':00';
$day_3 = array_filter($check_day_3, function($obj){return $obj['time'] == '2017-02-25 15:00';});
使用变量($launch):

我没有收到任何错误消息,但它不起作用。

echo$launch
准确显示
2017-02-25 15:00


想法将是伟大的!谢谢

$launch需要传递到匿名函数中。这是一个范围错误。


代码是否因错误而失败或不匹配?你能发布你是如何创建$launch变量的吗?Maby$launch不包含'2017-02-25 15:00'字符串,Maby它是一个类似日期对象的东西。
echo$launch
精确显示您分配给
2017-02-25 15:00
$day\u 3
,但希望
$launch
以某种方式更改吗?不,我想在变量
$launch
中调用$day_3内的日期,而不是在
2017-02-25 15:00
之前调用。谢谢,尝试了,但没有成功。我没有收到任何错误消息,
var\u dump
向我显示
string(16)“2017-02-25 15:00”
它是否正常工作$消息是一个16个字符长的类型字符串。将
use($yourVarHere)
添加到匿名函数声明中,然后可以在函数内部使用var。
$example=function()use($launch)$day_3=数组过滤器($check_day_3,函数($obj){return$obj['time']==$example;})像那样?几乎:)。这应该可以做到:
$day\u 3=array\u filter($check\u day\u 3,函数()使用($launch){return$obj['time']==$launch;})
use$varName
是将变量从函数外部传递到函数内部的命令,因此可以与之交互。
$day_3=array_filter($check_day_3,函数()use($launch){return$obj['time']=$launch;})不起作用:(
$day_3 = array_filter($check_day_3, function($obj){return $obj['time'] == $launch;});
// Inherit $message
$example = function () use ($message) {
    var_dump($message);
};
$example();