I've read this excellent answer; How can I access an array/object?
However, I can't seem to extract the object value I need from a nested array. I'm using the campaign monitor API and it dumps out the following objects. I need to be able to echo or print_r the "Phone" custom field value:
This is what my query is producing in a var_dump($result->response);
Got subscriber
object(stdClass)#728 (6) {
  ["EmailAddress"]=>
  string(29) "example@mail.com"
  ["Name"]=>
  string(7) "Alan"
  ["Date"]=>
  string(19) "2016-10-07 17:10:00"
  ["State"]=>
  string(6) "Active"
      ["CustomFields"]=>
        array(4) {
        [0]=>
           object(stdClass)#727 (2) {
            ["Key"]=>
            string(5) "Phone"
            ["Value"]=>
            string(7) "12345678"
    }
[snip]
How to echo or print_r the phone number by selecting "Key" string and grabbing the "Value" string? I've tried below (and variations) but not working;
foreach($result->response->CustomFields as $CustomField) {
    if(!empty($CustomField->Key->Phone)) {
         $phone = $CustomField->Key->Phone->Value;
    }
echo 'test phone'. $phone;
}
The following DOES work (similar to this thread php accessing attributes in json) - however, the problem with using the integer [2] in the below is that it can potentially change to a different key, depending on number of fields in the array that a given user has populated - so this method is unreliable;
print_r($result->response->CustomFields[2]->Value); 
 
     
    