这是我第一次在这里发帖,虽然我在阅读这里的帖子时得到了很多很棒的技巧和技巧。
这是我的目标:
我有 2 个有点相似的表来比较。对于每个表的每一行,我都将我想要的字段放入一个数组中。
我基本上想从一个表中回显出在另一个数组中具有匹配值的任何数组的值。
这是我的代码,也许它会更容易理解。
$sql = "SELECT * FROM $i_comp ORDER BY `manufacturer`";
$statement = $objDb->query($sql);
$c_skus = $statement->fetchAll(PDO::FETCH_ASSOC);
$sql = "SELECT `sku_one`,`sku_two`,`qty`,`manufacturer`";
$sql .= "FROM $i_gas ORDER BY `manufacturer`";
$statement = $objDb->query($sql);
$d_skus = $statement->fetchAll(PDO::FETCH_ASSOC);
foreach ( $c_skus as $c_sku ) {
// i want to see if any values of this array exist in the array created hy
// the foreach loop below (yes, repeat for each row)
$c = array($c_sku['sku'],$c_sku['sku_one'],$c_sku['sku_two'],$c_sku['sku_three']);
foreach ( $d_skus as $d_sku ) {
$d = array($d_sku['sku_one'],$d_sku['sku_two']);
$intersect = array_intersect($c, $d);
echo '<pre>', print_r($intersect), '</pre>';
}
}
以下是我收到的每次代码迭代的结果:
Array
(
)
1
还应该注意的是,我不关心键,只关心值。最终,这些值将在 INSERT 语句中起作用,但目前我只需要得到正确的结果。
无论如何,感谢您的任何帮助!