Ik moet hebben dat hij dubbele arrays samenvoegt en alleen 'aantal' bij elkaar optelt a.d.h.v. het aantal dubbele arrays.
Hoe kan ik dit doen?
Dit is bijvoorbeeld zo'n array:
array(
[0] => array(
[productnaam] => Monomeer
[basisprijs] => 0
[basisstaffel] => 0-3:23;3-10:17;10-20:14;20-30:12;30-40:10;40-50:7,50;50-60:6,50;60-110:6;
[minimaalformaat] => 10x3
[maximaalformaat] => 120x5000
[breedte] => 100
[hoogte] => 30
[aantal] => 1
[Lijmlaag] => Wit(prijsberekening)($m2*4);
[Laminaat] => Anti-slip laminaat(prijsberekening)($o*5);
[Afwerking] => Contoursnijden(prijsberekening)($m2*30);
[extra] => Array(
[Elastieken|4,50] => 0
[Tiewraps|9,95] => 0
)
)
[1] => array(
[productnaam] => Monomeer
[basisprijs] => 0
[basisstaffel] => 0-3:23;3-10:17;10-20:14;20-30:12;30-40:10;40-50:7,50;50-60:6,50;60-110:6;
[minimaalformaat] => 10x3
[maximaalformaat] => 120x5000
[breedte] => 10
[hoogte] => 3
[aantal] => 1
[Lijmlaag] => Wit(prijsberekening)($m2*4);
[Laminaat] => Anti-slip laminaat(prijsberekening)($o*5);
[Afwerking] => Contoursnijden(prijsberekening)($m2*30);
[extra] => Array (
[Elastieken|4,50] => 0
[Tiewraps|9,95] => 0
)
)
[2] => array(
[productnaam] => Monomeer
[basisprijs] => 0
[basisstaffel] => 0-3:23;3-10:17;10-20:14;20-30:12;30-40:10;40-50:7,50;50-60:6,50;60-110:6;
[minimaalformaat] => 10x3
[maximaalformaat] => 120x5000
[breedte] => 10
[hoogte] => 3
[aantal] => 1
[Lijmlaag] => Wit(prijsberekening)($m2*4);
[Laminaat] => Anti-slip laminaat(prijsberekening)($o*5);
[Afwerking] => Contoursnijden(prijsberekening)($m2*30);
[extra] => Array(
[Elastieken|4,50] => 0
[Tiewraps|9,95] => 0
)
)
)
Dat zou dus uiteindelijk dit resultaat moeten zijn:
array(
[0] => array(
[productnaam] => Monomeer
[basisprijs] => 0
[basisstaffel] => 0-3:23;3-10:17;10-20:14;20-30:12;30-40:10;40-50:7,50;50-60:6,50;60-110:6;
[minimaalformaat] => 10x3
[maximaalformaat] => 120x5000
[breedte] => 100
[hoogte] => 30
[aantal] => 1
[Lijmlaag] => Wit(prijsberekening)($m2*4);
[Laminaat] => Anti-slip laminaat(prijsberekening)($o*5);
[Afwerking] => Contoursnijden(prijsberekening)($m2*30);
[extra] => Array(
[Elastieken|4,50] => 0
[Tiewraps|9,95] => 0
)
)
[1] => array(
[productnaam] => Monomeer
[basisprijs] => 0
[basisstaffel] => 0-3:23;3-10:17;10-20:14;20-30:12;30-40:10;40-50:7,50;50-60:6,50;60-110:6;
[minimaalformaat] => 10x3
[maximaalformaat] => 120x5000
[breedte] => 10
[hoogte] => 3
[aantal] => 2
[Lijmlaag] => Wit(prijsberekening)($m2*4);
[Laminaat] => Anti-slip laminaat(prijsberekening)($o*5);
[Afwerking] => Contoursnijden(prijsberekening)($m2*30);
[extra] => Array (
[Elastieken|4,50] => 0
[Tiewraps|9,95] => 0
)
)
)
Waar moet ik beginnen?
Ik zou niet weten hoe ik binnen een loop kan checken op dubbele waardes in de gehele array.
foreach($_SESSION['producten'] as $key => $product){
}
Ik had vroeger iets soortgelijks maar die array had namen als keys waar ik op checkte. Dat was deze code:
// If id of product does not exist, add it to session
if(!isset($_SESSION['producten'][$arr2['productid'].$arr2['kuubkosten']])){
$_SESSION['producten'][$arr2['productid'].$arr2['kuubkosten']] = $arr2;
// Else add to quantity
}else{
$_SESSION['producten'][$arr2['productid'].$arr2['kuubkosten']]['quantity'] += $arr2['quantity'];
}
