PHP fetch_assoc返回值,循环

时间:2015-02-23 14:28:27

标签: php mysql sql arrays loops

我有以下代码返回两个关联数组(两者都是SQL查询结果)。它应该迭代地将tableA中的值与tableB中的值进行比较,并确认A中的值在B中。现在,它返回部分结果,结果的另一部分为null(并且结果中的值不应为null)。

  • columnName是用于查询的列的名称
  • y是我的专柜

    while($tableA = $resultA -> fetch_assoc())
    {
        $tableB = $resultB -> fetch_assoc();
        $testA[] = $tableA; 
        $testB[] = $tableB;
        $value = $testA[$y];  
        $array = $testB[$y];
    
        //var_dump($value); 
        //var_dump($array); 
        //echo "Value[y]: ".$testA[$y]."\n"; 
    
        echo $value['$columnName']."\n"; 
    
        if(in_array($value['$columnName'], $testB))
        {
            echo $columnName.": ".$value["$columnName"]." PASS, A in B\n"; 
            //echo $value["$columnName"]."\n";
        }
        else 
        {
            echo $columnName.": ".$value["$columnName"]." FAIL, A in B\n"; 
            //echo "FAIL\n"; 
        }
    
        $y++; 
    } 
    

有人对如何解决此问题有任何建议吗?谢谢。

1 个答案:

答案 0 :(得分:0)

array_diff_assoc() might do what you need。它应该返回所有键>两个数组中都存在的值。