两个不同的大阵列

时间:2014-06-03 08:02:17

标签: php arrays foreach

我有两个数组的问题:

$pole1 = array(
    array("klic"=>"banan", "jmeno"=>"Banán"),
    array("klic"=>"pomeranc", "jmeno"=>"Pomeranč"),
);

$pole2 = array(
    array("klic"=>"banan"),
);

现在我需要foreach数据:

foreach ($pole1 as $key => $val){
    //all data from $pole
    echo $val
    //and here if "klic" from $pole1 == "klic" from $pole2
    if ($pole2[$key]["klic"] == $pole1["klic"]) 
        echo "YES"; // - **not working**
}

我需要检查来自$pole1的数据是否等于来自$pole2的数据并写一些文字,但我需要写出来自$pole1的所有数据。

3 个答案:

答案 0 :(得分:1)

你的意思是?

foreach ($pole1 as $key => $val) {
    if ( isset($pole2[$key]["klic"] && 
        ($pole2[$key]["klic"] == $pole1[$key]["klic"]) )
        echo "YES"; 
}

答案 1 :(得分:0)

试试这个

foreach($pole1 as $k1 => $arrays) {
    foreach($arrays as $k2 => $val) {

      if($pole2[$k1][$k2] == $val) {
          // $pole1[$k1][$k2] is equal to $pole2[$k1][$k2]
      }
}

答案 2 :(得分:0)

这将回显pole1中的每个条目,并检查pole1中的每个条目以及pole2中的每个条目。

foreach($pole1 as $val){
   echo($val);
   foreach($pole2 as $val2){
     if($val['klic']==$val2['klic']) echo 'YES';
   }
}