Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 二维阵列天线_Php_Arrays_Search - Fatal编程技术网

Php 二维阵列天线

Php 二维阵列天线,php,arrays,search,Php,Arrays,Search,我有一个二维数组 $list['1'][] ='23'; $list['1'][] ='24'; $list['1'][] ='25'; $list['1'][] ='26'; 和一维阵列 $items={"23","24","36"}; following is right syntax for 1d array. $items=array("23","24","36"); 我想检查$List['1']值是否在$items中,如果没有,则将它们存储到新数组中 我试过了 $differe

我有一个二维数组

$list['1'][] ='23';
$list['1'][] ='24';
$list['1'][] ='25';
$list['1'][] ='26';
和一维阵列

$items={"23","24","36"};

following is right syntax for 1d array.

$items=array("23","24","36");
我想检查$List['1']值是否在$items中,如果没有,则将它们存储到新数组中

我试过了

$different['1'][] = array_diff($items,$list['1']);
但若并没有差异,它将创建一个键为空的数组

$different['1]

['1'] => Array
    (
        [0] => 
    )

这应该会起作用

我无法重现这种行为

<?php
echo 'php: ', PHP_VERSION, "\n";
$list = array(1=>array());
$list[1][]=23;
$list[1][]=24;
$list[1][]=25;
$list[1][]=26;

$items = array(23,24);

var_dump(array_diff($items,$list[1]));
试试这个:

$item = array('23','24');
foreach($list['1'] as $listItem) {
    if(!in_array($listItem, $item)) {
        $different['1'][] = $listItem;
    }
}

您的arr_diff函数的参数序列错误。这就是为什么它会给你空值。尝试上面的代码。

对$list数组中的每个元素使用for循环,并在该循环中添加以下代码

if(!in_array($list[1][0], $items)){
  array_push($items, $list[1][3]);
}

print_r($items);

根据您当前的示例,数组差异的结果是正确的,因为$item1的所有元素都存在于数组$list['1']中。那么这里的问题是什么呢???请先修复语法错误。@Shades88想接受,但需要7分钟我不是说立即,但请接受之前发布的任何有答案的问题
$item = array('23','24');
foreach($list['1'] as $listItem) {
    if(!in_array($listItem, $item)) {
        $different['1'][] = $listItem;
    }
}
$list['1'][] ='23';
$list['1'][] ='24'; 

$items=array("23","24");

$different['1'][] = array_diff($items,$list['1']);

var_dump($different['1']); // output: array(1) { [0]=> array(0) { } }

$different['1'] = array_diff($items,$list['1']);

var_dump($different['1']); // output: array(0) { }
      $list['1'][] ='23';
    $list['1'][] ='24';
    $list['1'][] ='25';
    $list['1'][] ='26';

    $items=array("23","24");

$different['1'][] = array_diff($list['1'],$items);
if(!in_array($list[1][0], $items)){
  array_push($items, $list[1][3]);
}

print_r($items);