JSON はまったく初めてで、php を使用してリモート JSON をフィルタリング/ソートし、フォーマットされた結果を CMS に埋め込む作業を担当しています。
データ構造は次のようになります。
"Categories":[
{
"Name":"Americas",
"ID":"12345",
"Countries":[
{
"Name":"Argentina",
"Partners":[
{
"Country":"Argentina",
"ID":"4321",
"LogoUrl":"logo1.jpg",
"Title":"Company A",
"AddressBlock":"123 Main Street",
"Phone":"444-555-1212",
"TollFree":"",
"Email":"info@CompanyA.com",
"Url":"http://www.CompanyA.com/",
"IsVisible":true,
"IsDistributor":false
}
]
},
{
"Name":"Brazil",
"Partners":[
{
"Country":"Brazil",
"ID":"5432",
"LogoUrl":"logo2.jpg",
"Title":"Company B",
"AddressBlock":"54 Center Street",
"Phone":"234-567-3600",
"TollFree":"",
"Email":"info@CompanyB.com",
"Url":"http://www.CompanyB.com",
"IsVisible":true,
"IsDistributor":false
},
"Name":"Canada",
"Partners":[
{
"Country":"Canada",
"ID":"Company C",
"LogoUrl":"logo3.Company C",
"AddressBlock":"1 Mll Road Floor 27\r\nCanton, ON",
"Phone":"555-66-7777",
"TollFree":"",
"Email":"info@CompanyC.com",
"Url":"http://www.CompanyC.com",
"IsVisible":true,
"IsDistributor":false
},
]
}
]
}
]
理想的には、キーと値のペアを配列に格納し、アルファベット順に並べ替えたリストとして出力したいと考えています。国ごとに複数のエントリを持つことができ、「IsVisible:false」に設定されたエントリは非表示にする必要があります。
私はここでいくつかの検索を行い、データソースに到達できましたが、配列は '展開' されておらず、php によってその次元をループ処理されておらず、これが返されます:
Categories:Array
このコードを使用して:
$string = file_get_contents("https://myURL.securekey");
foreach ($json_a as $key => $value)
{
foreach($value as $v)
{
echo $v." ";
}
}
どんな助けでも大歓迎です。
ありがとう!