【问题标题】:PHP Compare item in two array?PHP比较两个数组中的项目?
【发布时间】:2012-12-03 09:48:10
【问题描述】:

我尝试了很多次比较,但没有成功。

我也尝试过使用 array_diff 或 array_intersect 但是...

 $a = array(
            array('1','11'),
            array('2','22'),
            array('3','33'),
            array('4','44'),
    );

$b = array(
    array('2','22'),
    array('3','33')
);

for($j = 0;$j < count($a);$j++) {
    for($v = 0;$v < count($b);$v++) {
        if($b[$v][0] == $a[$j][0]) {
           echo 1.' ';
        } else {
            echo 0.' ';
        }
    }
}

结果:

0 1 1 0

【问题讨论】:

  • 你需要更清楚你想要达到的目标。
  • 你不能得到4 echos 0 1 1 0,因为你正在运行一个循环,它给你打印8 echo 值(例如:0 0 1 0 0 1 0 0)。

标签: php compare


【解决方案1】:

你当前的脚本返回

  0 0 1 0 0 1 0 0

要获得所需的输出,您应该尝试:

foreach ($a as $v)
{
    in_array($v, $b) ? print("1 ") : print("0 ");
}

输出

0 1 1 0

See Live Demo

【讨论】:

猜你喜欢
  • 2017-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多