检查php数组中是否存在记录并根据结果执行操作

时间:2017-09-26 17:38:33

标签: php arrays

我正在尝试在php中执行以下操作。

我有两个数组如下:

$newitems = "id","name","quantity";
$olditems = "id","name","quantity";

都包含文章列表。

我想做什么:

循环播放$newitems中的项目,并将其与$olditems中的项目进行比较。根据结果​​执行以下操作:

  • If item is in $newitems AND in $olditems - >运行更新查询。
  • If item is in $newitems AND NOT in $olditems - >运行插入查询。
  • If item is NOT in $newitems and IS in $olditems - >运行删除查询。

有人能引导我朝正确的方向前进吗?

1 个答案:

答案 0 :(得分:0)

  

如果项目在$ newitems和$ olditems中 - >运行更新查询。

$toUpdate = array_intersect($newitems, $olditems);
  

如果商品是$ newitems而不是$ olditems - >运行插入查询。

$toInsert = array_diff($newitems, $olditems); 
  

如果item不在$ newitems中且IS在$ olditems中 - >运行删除查询。

$toDelete = array_diff($olditems, $newitems);

然后,您可以遍历每个阵列并执行相应的操作。

有关详细信息,请参阅array_intersect()array_diff()的文档。