0

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

<?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 语句来获取值。但是我不确定如何匹配和删除数组中的数字。

这一定很简单。我相信要么我看得太多了,要么我的技能有限,因为我对这些东西还很陌生。但是我几天来一直试图弄清楚这一点。请帮忙。

4

2 回答 2

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);

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

于 2013-08-28T16:16:51.863 回答
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);
于 2013-08-28T16:17:51.420 回答