kaaNx adlı üyeden alıntı: mesajı görüntüle
unset ile silersen array index yapin yeniden sıralanmaz, array_splice ile silmen gerekiyor.
örneğin elinde $cars = array("Volvo", "BMW", "Toyota"); şeklinde bir array varsa normalde bu arrayin çıktısı Array ([0] => "Volvo" [1] => "BMW" [2] => "Toyota ") şeklinde 0,1,2. indexler ile olacaktır.
Eğer unset kullanırsan ve örneğin unset(1) dersen array çıktısı şu şekilde olacak : Array ([0] => "Volvo" [2] => "Toyota ") yani 1. index yok olmuş oldu. Dolayısıyla loop döndürüyorsan hesaplama sorunu oluşacaktır.
aynı işlem için array_splice kullanırsan array çıktısı Array ([0] => "Volvo" [1] => "Toyota ") olacak ve array yeniden oluşturulup indexler düzenlenecektir.

Eğer array yapında fiyat ile siparis id aynı index altında değilse ayrı ayrı silmen gerekiyor.
ozaman ben
product_item[$product_id] sildiğimde
summary[total_price] silmem gerekiyor
doğru mu?