为了账号安全,请及时绑定邮箱和手机立即绑定

PHP检查数组中是否存在字符串不起作用

PHP检查数组中是否存在字符串不起作用

PHP
慕雪6442864 2021-05-14 14:15:29
我正在尝试查看vin数是否存在于没有运气的数组中。这是我的数组结构-$vin[] = array($data);Array ( [0] => Array ( [0] => 1C6RR7FG2JS178810 ) [1] => Array ( [0] => 1C6RR7FG2JS178810 ) [2] => Array ( [0] => 1C6RR7FG2JS178810 ) [3] => Array ( [0] => 1C6RR7FG2JS178810 )以及使用in_array检查数组的方法-if (in_array("1C6RR7FG2JS178810", $vin)){     echo "found"; }else{     echo "not found"; } 但是即使我知道确实存在,也没有每次都找不到节目。我要去哪里错了?
查看完整描述

2 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

请注意,您的array元素是具有1个元素的array。您可以使用array_column提取它们。考虑:


if (in_array("1C6RR7FG2JS178810", array_column($vin, "0"))){ 

    echo "found"; 

} else { 

    echo "not found"; 

我怀疑您没有正确添加数据。注意using$vin[] = array($data);是向$vin数组包装的元素中添加数据-我想您应该这样做$vin[] = $data;(这可能会发生一些循环...


查看完整回答
反对 回复 2021-05-28
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

您在数组中附加变量的类型将第二个数组附加到数组中的0键,并创建多维数组。


$array[] = ['someX'];


if (in_array('someX', $array[0])){

  echo "yes";

}

在此示例中,someX变量位于0键上,因此该数组将如下所示:


Array

(

    [0] => Array

        (

            [0] => someX

        )


)

如果您决定使用多维数组,请查看以下链接: in_array()和多维数组


if(array_search('1C6RR7FG2JS178810', array_column($vin, "0")) !== false) {

    echo 'value is in multidim array';

}

else {

    echo 'value is not in multidim array';

}


查看完整回答
反对 回复 2021-05-28
  • 2 回答
  • 0 关注
  • 132 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信