将php数组与mysql列进行比较

时间:2013-08-28 16:05:23

标签: php mysql arrays

我有一个包含数字的数组。

<?php 

$cartA = ['1', '2', '3', '4', '5', '6'];

 ?>

我有一个mysql列,其中包含数字4和6.

我想动态显示$ cartA数组,而不包含mysql列中包含的数字。 因此,我想要我的新数组(或显示):     

$cartA_computer_no = ['1', '2', '3','5'];

?>

我使用mysqli_fetch_assco数组从mysql中获取结果,并使用了while语句来获取值。但是我不确定如何匹配和删除数组中的数字。

这很简单。我相信要么我在寻找某些东西,要么我的技能是有限的,因为我对这些东西很新。然而,我一直在努力解决这个问题。请帮忙。

2 个答案:

答案 0 :(得分:0)

您可以使用array_diff()来区分两个数组。

$cartA = array ('1', '2', '3', '4', '5', '6');
$data_from_fetch_assoc = array ();

$result = mysqli_query ($your_query_here);

while ($row = mysqli_fetch_assoc ($result))
{
   $data_from_fetch_assoc[] = $row['cart'];
}

$cartA_computer_no = array_diff ($cartA, $data_from_fetch_assoc);

顺便说一句,您是将数字存储为字符串(使用单引号)还是仅仅是您的输入?

答案 1 :(得分:0)

你应该使用array_diff:

$cartA = ['1', '2', '3', '4', '5', '6'];
$mysql_column = ['5' '6'];
$cartA_computer_no = array_diff($cartA, $mysql_column);
print_r($result);