I have created following array. But this is not what actually i want. help to create a new array from this to fulfill my requirements.
Array (
[supplier_id] => 1
[filter_name] => Array
(
[0] => product 1
[1] => Product 2
[2] => Product 3
)
[quantity] => Array
(
[0] => 3
[1] => 10
[2] => 2
)
[unit] => Array
(
[0] => pkts
[1] => ltrs
[2] => pkts
)
[price] => Array
(
[0] => 11
[1] => 100
[2] => 10
)
[gross_amount] => Array
(
[0] => 33
[1] => 1000
[2] => 20
)
[vat] => Array
(
[0] => 0
[1] => 0
[2] => 0
)
[net_amount] => Array
(
[0] => 33
[1] => 1000
[2] => 20
) )
And This is the array i want exactly. Is there any idea to create this type of array.
Array(
[supplier_id] = 1
[0] = Array(
[filter_name] => product 1
[quantity] => 3
[unit] => pkts
[price] => 11
[gross_amount] => 33
[vat] => 0
[net_amount] => 33
)
[1] = Array(
[filter_name] => product 2
[quantity] => 10
[unit] => ltrs
[price] => 100
[gross_amount] => 1000
[vat] => 0
[net_amount] => 1000
)
[2] = Array(
[filter_name] => product 3
[quantity] => 2
[unit] => pkts
[price] => 10
[gross_amount] => 20
[vat] => 0
[net_amount] => 20
))
I think this should help you, I am assuming there are maximum 3 values in your sub-array, So I used while($i<3);
$i = 0;
$newArray = array();
do{
foreach($arr as $key=>$val){
if($key == 'supplier_id'){
$newArray[$key] = $val;
}else{
$newArray[$i][$key] = $val[$i];
}
}
$i++;
}while($i<3);
echo "<pre>"; print_r($newArray);