Моя цель - добавить новый набор записей продуктов в существующий ассоциативный массив, но каждый продукт будет представлен только один раз. Я написал функцию ниже. Похоже, слишком много кода для чего-то такого простого. Есть ли функция массива PHP, о которой мне нужно узнать?Добавить в ассоциативный массив - но без дубликатов
function _append (&$already, $addition) {
while($result = mysql_fetch_array($addition)) {
$already_found = FALSE;
foreach ($already as $try) {
if ($try["products_id"] == $result["products_id"]) {
$already_found = TRUE;
break;
}
}
if (!$already_found) { $already[] = $result; }
}
}
Я использую ассоциативный массив, поэтому $ item ['product_id'] не является ключом. Я не уверен, как применить ваш ответ. – Smandoli
Вы используете ассоциативный массив для каждого элемента, но '$ уже ', по-видимому, численно проиндексирован. И, как я понимаю, поле 'products_id' * является * ключом; ваше полное определение «дубликат» состоит в том, что эти два матча. Если вы меняете вещи так, что используете товар product_id как ключ ... а. Лемм прав. – cHao
Спасибо за редактирование. Мне нужна была помощь. :-p – Smandoli