I have an array and it returns me as follows. I need to add their values, but depending on the account "cuenta", branch "ramo", sub-branch "subramo", specific "especifica" or sub-specific "subespecifica".
array(5) {
[0]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "2"
["especifica"]=>
string(2) "19"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "354.00"
}
[1]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "2"
["especifica"]=>
string(2) "11"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "543.74"
}
[2]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "2"
["especifica"]=>
string(2) "11"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "985.54"
}
[3]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "1"
["especifica"]=>
string(1) "8"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "177.00"
}
[4]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "1"
["especifica"]=>
string(1) "2"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(5) "88.50"
}
}
I need to return the total amount depending on what I just mentioned. that is to say:
array(4) {
[0]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "2"
["especifica"]=>
string(2) "19"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "354.00"
}
[1]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "2"
["especifica"]=>
string(2) "11"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "1529.28"
}
[2]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "1"
["especifica"]=>
string(1) "8"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(6) "177.00"
}
[3]=>
array(6) {
["cuenta"]=>
string(1) "1"
["ramo"]=>
string(1) "1"
["subramo"]=>
string(1) "1"
["especifica"]=>
string(1) "2"
["subespecifica"]=>
string(1) "0"
["costo"]=>
string(5) "88.50"
}
}
You could use array_map:
<?php
$input = array(
array(
'first' => 1,
'second' => 2,
),
array(
'third' => 3
)
);
echo array_sum( array_map( function( $arr ) {
return array_sum( $arr );
}, $input ) ); // Outputs 6
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.