1 回答

TA貢獻(xiàn)2021條經(jīng)驗 獲得超8個贊
嘗試在類的最開始創(chuàng)建一個屬性,例如
private $exportedProductsIds = [];
然后在每次迭代之后,在返回之前將導(dǎo)出的產(chǎn)品 ID 放入其中
array_push($this->exportedProductsIds, $objProduct->id);
然后在運行前添加驗證,如果 id 已經(jīng)在$exportedProductsIds然后跳過迭代
if (!in_array($objProduct->id, $this->exportedProductsIds)) {
//run your code
}
但我認(rèn)為放置此代碼的最佳位置是您調(diào)用getProductFromArray方法的地方。
我假設(shè)是這樣的
private function exportProducts($products)
{
foreach ($products as $product) {
if (in_array($objProduct->id, $this->exportedProductsIds)) {
continue;
}
if ($this->getProductFromArray($arrProduct)) {
array_push($this->exportedProductsIds, $objProduct->id);
}
}
}
- 1 回答
- 0 關(guān)注
- 130 瀏覽
添加回答
舉報