D.Wells D.Wells - 1 year ago 93
PHP Question

How to Extract Values from php array

I'm trying to return the LARGEST numerical value associated with the 'reduced' array below. Easy enough if there is one value but many have two- as below. I'm using

$reduced_array = $data['rates'][1]['rates'][0];


but this only works in returning the first value. I need to return just the highest value however- so below it would be 8.
would something like

if(count($data['rates'][1]['rates']) > 2) {
***return largest value here***


work? I'm just not sure how to perform the asterisked task- maybe a for loop? here is the array.

Array
(
[rates] => Array
(
[0] => Array
(
[name] => Super Reduced
[rates] => Array
(
)

)

[1] => Array
(
[name] => Reduced
[rates] => Array
(
[0] => 5
[1] => 8
)

)

[2] => Array
(
[name] => Standard
[rates] => Array
(
[0] => 23
)

)

[3] => Array
(
[name] => Increased
[rates] => Array
(
)

)

[4] => Array
(
[name] => Parking
[rates] => Array
(
)

)

)

[disclaimer] => Rates data is based on information published by the European Commission, updated 1st January 2017.
)


Thanks for any help

Answer Source

You can use max() for that.

$array = array(
    "rates" => array(
        array(
            "name" => "Super Reduced",
            "rates" => array()
        ),
        array(
            "name" => "Reduced",
            "rates" => array(
                5,
                8
            )
        )
    )
);

echo max($array["rates"][1]["rates"]); // 8
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download