Php将多维数组中的多个值与另一个多维数组进行比较
我有一个多维数组 简单示例数组Php将多维数组中的多个值与另一个多维数组进行比较,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个多维数组 简单示例数组 [0]=>array(2) { ["slug"]=>string(12) "exampleslug1" ["tax"]=>string(11) "exampletax1"} [1]=>array(2) { ["slug"]=>string(12) "exampleslug2" ["tax"]=>string(11) "exampletax2"} [2]=>array(2) { ["slug"]=>string(12)
[0]=>array(2) {
["slug"]=>string(12) "exampleslug1"
["tax"]=>string(11) "exampletax1"}
[1]=>array(2) {
["slug"]=>string(12) "exampleslug2"
["tax"]=>string(11) "exampletax2"}
[2]=>array(2) {
["slug"]=>string(12) "exampleslug2"
["tax"]=>string(11) "exampletax3"}
现在我想检查另一个多维数组中的两个值
比如说。我想检查slug是否为“exampleSlaug2”,tax=“exampleTash2”
所以在这种情况下,它应该返回false/true/false
我试过使用数组,但我似乎无法让它对多维数组起作用。
有谁能帮我找到一个解决方案,检查多维数组中的多个值是否与第二个多维数组中的值相同
如果它尝试像
if (!in_array($termSlug, $externalTermSlugs['slug']) && !in_array($termTax, $externalTermSlugs['tax']) ) {}
它多次添加所有内容,我想要的是,它只添加一次唯一的内容,如果它已经存在,则不会覆盖任何内容。试试这段代码
<?php
$arr = array( 0 => array("slug"=>"exampleslug1","tax"=>"exampletax1"),
1 => array("slug"=>"exampleslug2","tax"=>"exampletax2"),
2 => array("slug"=>"exampleslug2","tax"=>"exampletax3"));
foreach($arr as $key => $value){
if($value['slug']=="exampleslug2" && $value['tax']=="exampletax2"){
echo "true"."<br>";
}else{
echo "false"."<br>";
}
}
?>
使用一个简单的foreach
迭代。在数组中([“slug”=>$termslaug,“tax”=>$termTax],$externaltermslags)如何?另外,array\u unique($externaltermslagus,SORT\u REGULAR)
将在不需要任何检查的情况下执行重复数据消除if($value=['slug'=>“exampleSlaug2”,'tax'=>“exampleTash2”]){
Thnx我最终使用了类似于您的代码的东西。我正在做foreach来设置值(如果它存在的话),然后在下面,如果没有设置值来运行我的脚本(如果代码还不存在,我需要它发生)foreach($arr as$key=>$value){if($value====['slug'=>$termslaug,'tax'=>$termTax]){$alreadySet=true;continue;}}
而不是thnx
接受答案,这样每个人都能看到这个答案@tic