PHP:检查数组值是否存在于另一个数组中
我创建了如下数组:PHP:检查数组值是否存在于另一个数组中,php,Php,我创建了如下数组: $foods_customer = array(["meal"=>1,"rice"=>1]; [{meal: 1, rice: 1 , chesse:1}] 0: {meal: 1, rice: 1,chesse:1} meal: 1 rice: 1 chesse:1 返回此数组时,如下所示: [{meal: 1, rice: 1}] 0: {meal: 1, rice: 1} meal:
$foods_customer = array(["meal"=>1,"rice"=>1];
[{meal: 1, rice: 1 , chesse:1}]
0: {meal: 1, rice: 1,chesse:1}
meal: 1
rice: 1
chesse:1
返回此数组时,如下所示:
[{meal: 1, rice: 1}]
0: {meal: 1, rice: 1}
meal: 1
rice: 1
我还有另一个这样的数组:
$foods_customer = array(["meal"=>1,"rice"=>1];
[{meal: 1, rice: 1 , chesse:1}]
0: {meal: 1, rice: 1,chesse:1}
meal: 1
rice: 1
chesse:1
$foods,当我回来时,看起来是这样的
[{meal: 1}, {meal: 1, rice: 1}]
0: {meal: 1}
meal: 1
1: {meal: 1, rice: 1}
meal: 1
rice: 1
我想检查数组$foods\u客户是否存在于数组$foods中
在这种情况下,如果$foods\u客户是这样的,则必须返回true,位:
$foods_customer = array(["meal"=>1,"rice"=>1];
[{meal: 1, rice: 1 , chesse:1}]
0: {meal: 1, rice: 1,chesse:1}
meal: 1
rice: 1
chesse:1
因此,返回false。只需foreach和idential检查,您就可以非常轻松地完成此操作。首先对主数组进行循环,然后在其内部进行另一个循环,然后以相同的方式检查数组 试试这个:
$foods_customer = array(["meal"=>1,"rice"=>1]);
$foods = array(["meal"=>1 ],["meal"=>1,"rice"=>1]);
$res = false;
foreach( $foods as $food ){
foreach( $foods_customer as $fc ){
if( $fc === $food ){
$res = true;
break;
}
}
}
echo $res;
你可以很容易地做到这一点,只需foreach和相同的检查。首先对主数组进行循环,然后在其内部进行另一个循环,然后以相同的方式检查数组 试试这个:
$foods_customer = array(["meal"=>1,"rice"=>1]);
$foods = array(["meal"=>1 ],["meal"=>1,"rice"=>1]);
$res = false;
foreach( $foods as $food ){
foreach( $foods_customer as $fc ){
if( $fc === $food ){
$res = true;
break;
}
}
}
echo $res;
始终返回null,dd($res)返回false。“dd”@sarobeatbox是什么,类似于laravel上的var_转储。我认为您的代码具有不同的值。你能在这里发布你的代码吗-@sarobeatbox这意味着它不是数组。也许这是一个类实例。首先打印该对象并查看其内部。然后获取数组并使用我的代码。-@SaroBeatboxalways返回null,dd($res)返回false。“dd”@SaroBeatboxalways像laravel上的变量转储。我认为您的代码有不同的值。你能在这里发布你的代码吗-@sarobeatbox这意味着它不是数组。也许这是一个类实例。首先打印该对象并查看其内部。然后获取数组并使用我的代码。-@纱罗包厢