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