0
我有一個多維$array
。其專欄之一是customer name
。 我必須將array
的所有行保存在一個數據庫中,但具有相同的customer name
的行除外。PHP - 搜索多維數組內的值
我寫了一個叫做searchMultidimensionalArray
的函數,它創建一個數組,其中包含所有具有不同customer name
的行。在db中插入一行之前,我搜索該數組中的當前行。如果存在,我什麼都不做,否則我存儲當前行。
這是我的解決方案,但它工作不正常。
public function searchMultidimensionalArray($valueName, $arrayCustomer)
{
foreach ($arrayCustomer as $key => $val) {
if ($val['name'] === $valueName) {
return true;
}
return false;
}
}
這是通過陣列I循環:
for ($i = 1; $i < $countArray; $i++) {
$customer = new Customer();
$customer->setName($customerName); // I already have $customerName data
if ($i == 1) {
$arrayCustomer[$i] = [
'name' => $customerName,
];
$em = $this->getDoctrine()->getManager();
$em->persist($customer);
$em->flush();
}
if ($this->searchMultidimensionalArray($customerName, $arrayCustomer) == true) {
$repository = $this->getDoctrine()->getRepository('AppBundle:Customer');
$customer = $repository->findOneBy(['name' => $customerName]);
} else {
$em = $this->getDoctrine()->getManager();
$em->persist($customer);
$em->flush();
$arrayCustomer[$i] = [
'name' => $customerName,
];
}
}
問題是? – Condorcho
@Condorcho具有相同「客戶名稱」的行全部存儲在數據庫中 – Dygne