2016-11-15 6 views
1

Как я могу получить доступ к определенным «ключам» и связанным им «значениям» для использования позже вне цикла foreach?ключ foreach -> значение за пределами foreach

Вот массив;

Array ([0] => 
CustomFields 
[1] => stdClass Object 
    ([Key] => Phone [Value] => 5555555) 
[2] => stdClass Object 
    ([Key] => City [Value] => New York) 
[3] => stdClass Object 
    ([Key] => State [Value] => NY) 
[4] => stdClass Object 
    ([Key] => Cellphone [Value] => 222444555) 

И вот запрос, который я использую;

$cf = array(); 
foreach($result->response->CustomFields as $data) { 

    $cf [] = $data; 

     if ($cf [] = ($data->Key == 'Phone')) { 
      echo 'Your Phone number is:'.$data->Value.'<br> '; 
     } 

      if ($cf [] = ($data->Key == 'City')) { 
      echo 'Your City is: '.$data->Value.'<br> '; 
     } 
} 

Моего запрос работает внутри цикла Еогеаспа и правильно печатает телефон и значение Города - но я хотел бы иметь возможность печатать эти значения за пределами этого цикла.

ответ

2
function findByKeyInCollection($key, $collection){ 
    foreach($collection as $data) { 
     if ($data->Key == $key) { 
      return $data; 
     } 
    } 
} 
$phone = findByKeyInCollection("Phone", $result->response->CustomFields); 
echo 'Your Phone number is:'.$phone->Value.'<br> '; 
+0

Wow - thank you - работает отлично - и вы делаете это так просто! Очень признателен ;-) – Sol

Смежные вопросы