I am sruggeling with the following issue. I have 2 csv files from 2 different suppliers. I want to add the stock of both supplyers to a new total array.
Here is the output of Array 1
Array
(
[0] => Array
(
[ARTNUMBER] => 12345
[STOCK] => 3
)
)
Here is the output of Array 2
Array
(
[0] => Array
(
[ARTNUMBER] => 12345
[STOCK] => 5
)
[2] => Array
(
[ARTNUMBER] => 23456
[STOCK] => 5
)
)
The new array should look like this:
Array
(
[0] => Array
(
[ARTNUMBER] => 12345
[STOCK] => 8
)
[2] => Array
(
[ARTNUMBER] => 23456
[STOCK] => 5
)
)
I would like to do 2 things:
Could someone please help me out how to do this?
(I am looking for the most simple way of doing this)
this should work
$array_1[] = array( "ARTNUMBER" => 12345, "STOCK" => 5 );
$array_2[] = array( "ARTNUMBER" => 12345, "STOCK" => 5 );
$array_2[] = array( "ARTNUMBER" => 23456, "STOCK" => 5 );
$data = array();
foreach($array_1 as $key => $value) {
if(key_exists($value["ARTNUMBER"], $data)) {
$data[$value["ARTNUMBER"]] += $value["STOCK"];
}
else {
$data[$value["ARTNUMBER"]] = $value["STOCK"];
}
}
foreach($array_2 as $key => $value) {
if(key_exists($value["ARTNUMBER"], $data)) {
$data[$value["ARTNUMBER"]] += $value["STOCK"];
}
else {
$data[$value["ARTNUMBER"]] = $value["STOCK"];
}
}
$final = array();
foreach($data as $key => $value) {
$final[] = array( "ARTNUMBER" => $key, "STOCK" => $value );
}
echo "<pre>";
print_r($final);
echo "</pre>";