2017-11-23 1 views
0

からの情報の取得します私はちょうど$forename = $decodedResponse["Forenames"];行うことができますForenameを取得するので、現時点ではは私が使用できるように、私は連想配列として応答を持っているAPI</p> <p>に通話を発信していますネストされた配列のPHP

{ 
    "Title": "Mr", 
    "Forenames": "Steve", 
    "Surname": "Williams", 
    "CountryOfBirth": 1, 
    "EmailAddress": "[email protected]", 
    "EmailType": "Personal", 
    "BirthDate": "\/Date(632880000000)\/", 
    "Suffix": null, 
    "NationalInsuranceNumber": null, 
    "PrimaryAddress": { 
    "Address1": "Flat 1", 
    "Address2": "Oxford Street", 
    "City": "London", 
    "County": "London", 
    "Postcode": "L12456", 
    "Country": 1 
    }, 
    "AdditionalAddresses": [ 
    { 
     "Address1": null, 
     "Address2": null, 
     "City": null, 
     "County": null, 
     "Postcode": null, 
     "Country": 0, 
     "AddressType": 0 
    } 
    ], 
    "PrimaryTelephone": { 
    "Number": "123456789", 
    "DialingCode": 1, 
    "TelephoneType": 1 
    }, 
    "AdditionalTelephone": [ 
    { 
     "Number": "223456789", 
     "DialingCode": 2, 
     "TelephoneType": 2 
    } 
    ], 
    "BankAccount": { 
    "AccountName": "John Doe Account", 
    "AccountNumber": "123456789", 
    "SortCode": "123456" 
    }, 
    "PrimaryCitizenship": { 
    "CountryOfResidency": 1, 
    "TaxIdentificationNumber": "AB12CD34EF56" 
    }, 
    "AdditionalCitizenship": [ 
    { 
     "CountryOfResidency": 0, 
     "TaxIdentificationNumber": null 
    } 
    ], 
    "ExternalCustomerId": "91", 
    "ExternalPlanId": "91", 
    "PlanType": 10 
} 

が、私はかなりBだ:キーは以下のように自身配列です。内側の配列から値を取得しようとしています。その値を取得するために、特定のキーによって、元の連想配列を通して

foreach($decodedResponse as $data) 
     { 
      foreach($data['TelephoneNumbers'] as $tel) 
      { 
       echo $tel['Number']; die(); 
      } 
} 

基本的にループして、ループ:

は、私はこのような何かを行うことができると思いました。

+0

あなたの連想配列には 'TelephoneNumbers'キーがありません。何をアクセスしようとしていますか? – omerowitz

+0

cf.マニュアルのサンプル#6(http://php.net/array) – Dormilich

答えて

0

AdditionalAddresses,AdditionalTelephoneおよびAdditionalCitizenshipの配列項目には、foreachを使用してください。それ以外の場合は、チェーン配列キーを使用します。例を参照してください:

$forename = $decodedResponse['Forenames']; 
$address2 = $decodedResponse['PrimaryAddress']['Address2']; 

foreach ($decodedResponse['AdditionalTelephone'] as $tel) { 
    echo $tel['Number']; 
} 
+0

私は今、非常に馬鹿だと感じています。約5分でさらに追加します。 –

関連する問題