如何将一个数组中的键值与另一个数组中的键值进行比较?

时间:2015-01-03 09:14:26

标签: php arrays

在PHP的foreach次迭代中,我希望检查一个数组中某个键的值是否等于另一个数组中另一个键的值。

$array1 = array(word1=>"hello",word2=>"world");
$array2 = array(word1=>"hello",word2=>"peter");

即。 Foreach $array1 as $element if $element [word1=>value] == $array2[word2=>value]

in_array似乎不够具体,因为它只在数组中的任何位置查找值。我只想检查它是否存在作为特定键值对的一部分。

2 个答案:

答案 0 :(得分:1)

尝试这样:如果你只担心价值,那么从if条件中删除关键不等式检查。

<?php 
$arr=array(1,3);
$arr2=array(3,4,1);
foreach($arr as $key1=>$val1){
    foreach($arr2 as $key2=>$val2){

        if($key1 != $key2 && $val1 == $val2){// if you do not want to check key inequality remove the first condition.
            echo "key1:".$key1.", key2:".$key2." ,value:".$val2."<br>";
        }
    }

}

答案 1 :(得分:0)

使用以下代码

 <?php
    $array1 = array("hello","world");
    $array2 = array("hello","peter");
    foreach( $array1 as $index => $p){
                if($p==$array2[$index]){
    echo "they have the same value<br>";
    }
else
{
echo "They have different value";
}
            }

希望这有助于你