簡體   English   中英

在PHP中打印嵌套的關聯數組

[英]Printing nested associative array in PHP

我正在使用此代碼$json_output = (json_decode($json, true)); 從JSON轉換為PHP中的關聯數組。

生成的數組對我來說太復雜了,我只需要打印一些鍵和值,但是它們是嵌套的,到目前為止,我還無法做到這一點,我為打印而遵循的示例對此太基礎了。

這是我的JSON的一部分:

{
"project": {
    "company": "Company Name SA de CV",
    "name": "Project Name",
    "files": [
        {
            "project-id": "666666",
            "filenameOnDisk": "HH-ORG-CMD-GUI-File.docx",
            "uploaded-date": "2018-01-29T21:20:56Z",
            "private": "0",
            "version-id": "3939061",
            "status": "active",
            "tags": [
                {
                    "name": "OPD",
                    "id": "25047",
                    "color": "#9e6957"
                }
            ],
            "id": "3796128",
            "last-changed-on": "2018-01-29T21:21:46Z",
            "versions": [],
            "uploaded-by-user-first-name": "Someone",
            "uploaded-by-user-last-name": "Anything",
            "name": "HH-ORG-CMD-GUI-GUIA_RAPIDA_PARA_CREAR_PROCESOS",
            "size": "262747",
            "category-name": "Instructivos"
        },
        {
            "project-id": "666",
            etc...,
        },

解析后的樣子 這個

我如何打印(說)FilesArray的filenameOnDisk和id鍵。

我不知道如何到達該嵌套數組。

echo $json_output['project']['files'][0]['project-id'];
echo $json_output['project']['files'][0]['filenameOnDisk'];
echo $json_output['project']['files'][0]['version-id'];

或者,您可以使用所需的值數組(只要它們都在“文件”數組中)將其放入foreach循環中。 例如。

$wantedValues = array("project-id","filenameOnDisk","version-id"); 

foreach ($wantedValues as $value) { 
  echo $json_output['project']['files'][0][$value];
}

我只需要在@SeeSamRun提供的代碼上添加幾行,即可獲得完整的“文件”數組。

$filesArray = $json_output['project']['files'];
$filesSize = count($filesArray);
$wantedValues = array("project-id","filenameOnDisk","version-id"); 

for ($i=0; $i < $filesSize; $i++) { 
foreach ($wantedValues as $value) {
echo $json_output['project']['files'][$i][$value];
      }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM