2016-11-15 7 views
1

後でforeachループの外で使用するために、特定の「キー」とその関連する「値」にアクセスするにはどうすればよいですか?foreach key - > 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> '; 
     } 
} 

私のクエリは、foreachループ内で動作し、正しく電話と都市値を出力します - しかし、私は、このループの外で、これらの値を印刷できるようにしたいと思います。

答えて

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

ワウ - ありがとうございます - それはとても簡単に見えます!とても有難い ;-) – Sol

関連する問題