У меня небольшая проблема. Я работаю над небольшим пакетом/списком продуктов. Если вы смотрите Пакет, мой сайт должен показать вам, какие продукты находятся там. Если продукт имеет более одного раза в нем, массив должен быть удален, а значение оставшегося массива должно быть + 1 (каждый удаленный массив).Заполнить значения в многомерном массиве (PHP)
Так вот мой код:
// $products_in_package has all products in it
// First of all, the products come from a db and don't have a count
// So i first give them a count of 1
foreach ($products_in_package as $product => $value) {
$products_in_package[$product]['count'] = intval(1);
}
foreach ($products_in_package as $product) {
$id_to_find = intval($product['ID']);
$product_count = intval($product['count']);
$found_id = 0;
// Now I try to find any ident products
// If found and over 1 time (beacouse he finds the first too of course)
// Then delete this array and count up the products count
for ($i=0; $i <= count($products_in_package); $i++) {
if(intval($products_in_package[$i]['ID']) === $id_to_find){
$found_id++;
if($found_id > 1){
$product_count = $product_count + 1;
$product['count'] = $product_count;
unset($products_in_package[$i]);
array_merge($products_in_package);
while($i > $products_in_package){
$i = 0;
}
}
}
}
}
Что я получаю правильный многомерный массив, но количество по-прежнему 1. Что случилось с кодом?
Каждый раз, когда я пытаюсь записать код, я получаю правильное целое число. (Нет, я уже пытался удалить chache) Но если я вхожу массив из петель, я всегда на счетчик 1.
Ой .. ничего себе .. Я не знал, что ответ так легко. Я не знал, что я приписываю копию. Почему? Я новичок в веб-дизайне, и я никогда не слышал об этом :( –
За исключением объектов, все задания в PHP делают копии. – Barmar
Ох .. и большое спасибо :) Я пробовал часы, и ничего не произошло –