Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.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 单维和多维in_数组_Php - Fatal编程技术网

Php 单维和多维in_数组

Php 单维和多维in_数组,php,Php,我有两个数组:一维数组和多维数组,多维数组是逗号 分开的 $singledim =Array ( [0] => 333 [1] => 673 [2] => 434 [3] => 67 ) $multidim = Array ( [0] => Array ( [0] => 22 [1] => 3336,673,34,342,432,23,323,43

我有两个数组:一维数组和多维数组,多维数组是逗号

分开的

$singledim =Array
(
    [0] => 333
    [1] => 673
    [2] => 434
    [3] => 67

)

$multidim = Array
(
    [0] => Array
        (
            [0] => 22
            [1] => 3336,673,34,342,432,23,323,434,765675765,7657567
        )

    [1] => Array
        (
            [0] => 24
            [1] => 2424,10
        )

    [2] => Array
        (
            [0] => 28
            [1] => 23,12,13,14,15,16
        )
............
}
我想用in_数组检查一维数组值是否存在。Belwo是我尝试的

<?
foreach($multidim  as $multi)
{
  if(in_array($singledim,$multi[1])
  {

  }
  $i++;
}
?>


如果您传递了一个数组,那么同一个数组组必须以完全相同的方式存在于草堆中才能匹配。

您不希望
出现在\u array()中。
。您需要
strpos(…)!==错误
。请注意,您可能会出现误报。e、 g.如果您正在搜索
1
,则您的
12
21
等。。。将出现错误匹配。您的结构需要规范化,并且
[1]
子元素中的每个值单独的值都应该是它自己的数组元素。

$multi[1]
不是数组。它是一个逗号分隔的字符串

您可以使用
explode
从字符串创建数组:

$vals = explode(',' ,$multi[1]);
if(in_array($singledim, $vals)
{

}
但是,只有当
$singledim
是一个字符串时,这才有效

如注释中所述,您正在检查整个数组是否与第二个数组中的字符串相同。您可以将第一个数组转换为字符串,然后检查它们是否相等:

$singleDimStr = implode(',' ,$singledim);
if($singleDimStr == $multi[1]) { 
}

现在您正在检查整个
$singledim
数组是否与
$multi[1]
中的元素匹配。这永远不会匹配。你能用文字确切地说明你想做什么吗?请提供预期的输出(带有有意义的示例)我在_array()中遇到这样的错误。我希望参数2是数组,字符串给定insence$multi[1]是一个字符串,它是一个数组。现在尝试一下,没有注意到它不是数组,你将不得不分解它
$singleDimStr = implode(',' ,$singledim);
if($singleDimStr == $multi[1]) { 
}