我的数组看起来像这样,
array(90) {
[0]=>
NULL
[1]=>
array(1) {
[0]=>
string(18) "2016-03-27 0:04:06"
}
[2]=>
array(1) {
[0]=>
string(1) "8"
}
.
.
.
[90]=>
array(1) {
[0]=>
string(18) "[action] => update"
}
数组名称为$array
。在这里,我可以使用$array[1][0]
获取数组的值,这会给我2016-03-27 0:04:06
。
现在我正在尝试使用以下命令按值搜索
$arrays = array_filter($array, function($ar) {
var_dump($ar[][0] == '2016-03-27 0:04:06');
});
但它给了我bool(false)
。我做错了什么
答案 0 :(得分:1)
作为I stated in the comments,$ar
是数组中每个对象/元素的迭代。可以把它想象成foreach
。
$array = array(
0 => NULL,
1 => array(0 => "2016-03-27 0:04:06"),
2 => array(0 => "8")
);
$arrays = array_filter($array, function($ar) {
return ($ar[0] == '2016-03-27 0:04:06') ? $ar : false;
});
print_r($arrays);
返回:
Array
(
[1] => Array
(
[0] => 2016-03-27 0:04:06
)
)