[英]Notice: Array to string conversion PHP
我发现分别在两个数组$item
和$query
之间的交集:
Array ( [0] => twitter [1] => 1 [2] => 561522539340771328 [3] => Array ( ) )
Array ( [0] => dig [1] => twitter )
这是我的代码:
if (array_intersect ( $query, $item )) {
$intersection [] = $item;
}
它以某种方式返回了该问题标题所定义的通知。 要么我太累了,以至于不知道出了什么问题,否则我可能会发疯, 它是否不应该返回 Array ( [0] => twitter )
?
这是因为在第一个数组的末尾有一个空数组,而array_intersect()
将尝试将其转换为一个字符串,从而产生此错误。
但是要摆脱此错误,您可以使用array_filter()
这样:
(同样,您要分配array_intersect的输出,然后使用它)
<?php
$item = array("twitter", 1, 561522539340771328, array());
$query = array("dig", "twitter");
if ($intersect = array_intersect($query, array_filter($item))) {
//^^^^^^^^^^^^ See here
$intersection [] = $intersect;
}
print_r($intersection);
?>
输出:
Array ( [0] => Array ( [1] => twitter ) )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.