gpt4 book ai didi

php - 我如何比较两个数组并将唯一记录添加到表中

转载 作者:行者123 更新时间:2023-11-29 03:33:45 25 4
gpt4 key购买 nike

我正在尝试比较和添加从表 B 到表 A 的唯一记录,如果存在重复记录,则跳过重复记录,并在下一条记录上执行搜索,如果找不到匹配项,则添加它。使用 [SalesDescription] 字段进行比较

我尝试使用 array_unique 和 array_differ、array_intersect,但这些函数都无法消除重复/对我不起作用。

这是添加数据的代码

  $records=array(
'SalesDescription' => $row['SalesDescription'],
'SO Qty' => $row['Quantity'],
'WO Qty' => $row['Reference'],
'SO Date' => $row['TransactionDate'],
'Color' => $row['DistNumber'],
'SO#' => $row['Reference'],
'Promised Date' => $row['GoodThruDate'],



);

$tv->addRecord($tableId, $records);//calls addRecord() function

表A:记录我想向其中添加数据的表

Array ( 
[id] => 3054535376
[table_id] => 50240233993
[created] => 2014-10-30T09:52:15-0600
[updated] => 2014-10-30T09:52:15-0600
[created_by] => 3045444045538
[fields] => Array (
[Work Order] => 87565
[SalesDescription] => 18X5X12 1/8 SOLID FORKLIFT TIRE PRESS-ONS
[SO#] => 14061
[SO Date] => 2013-10-16T00:00:00-0600
[Promised Date] => 2014-10-30T09:52:15-0600
[SO Qty] => 1.0000000000000000000
[WO Qty] => 14061
[Color] => 2
[s] => 2
[SHIP BY] => 2014-10-29
[CALC PROMISED DATE] => 2014-10-30
)
)

表B:记录我想从中获取数据的表

 Array ( 
[0] => CAS001
[CustomerId] => CAS001
[1] => CASH CUSTOMER
[Customer_Bill_Name] => CASH CUSTOMER
[2] => Will Call
[WhichShipVia] => Will Call
[3] => [INV_POSOOrderNumber] => [4] => 2013-07-24
[ShipByDate] => 2013-07-24
[5] => [GoodThruDate] => [6] => [CustomerSONo] => [7] => 13867
[Reference] => 13867 [8] => 2013-07-24
[TransactionDate] => 2013-07-24
[9] => 1
[DistNumber] => 1
[10] => 2.0000000000000000000
[Quantity] => 2.0000000000000000000
[11] => 121130581
[ItemId] => 121130581
[12] => 18X5X12 1/8 SOLID FORKLIFT TIRE PRESS-ONS
[SalesDescription] => 18X5X12 1/8 SOLID FORKLIFT TIRE PRESS-ONS
[13] => [PartNumber] => [14] => 18X5X12 1/8 SOLID FORKLIFTTIRE
[ItemDescription] => 18X5X12 1/8 SOLID FORKLIFTTIRE
)

最佳答案

这有点麻烦,但您可以先创建一个包含键(即 SalesDescription 值)的数组。Double SalesDescription 将互相覆盖,然后您将其转换回来:

<?php

$tableB = array(....)

$temp = array();
foreach($tableB as $value) {
$temp[$value['SalesDescription']] = $value;
}
$tableB = array();
foreach($temp as $value) {
$tableB[] = $value;
}

// Now $tableB has only unique SalesDescription's!

关于php - 我如何比较两个数组并将唯一记录添加到表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26659586/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com