2017-08-22 102 views
0
Array 
(
    [0] => Job 
    [1] => 
    [2] => Array 
     (
      [0] => stdClass Object 
       (
        [AppDataId] => 16368 
        [JobTitle] => Sigma Six Black Belt/Lean Administration Consultant 
        [Abstract] => Sigma Six Black Belt/Lean Administration Consultan ... - open 
       ) 

      [1] => stdClass Object 
       (
        [AppDataId] => 16367 
        [JobTitle] => General Manager (Power Generation) 
        [Abstract] => General Manager (Power Generation) - Botswana 
       ) 

      [2] => stdClass Object 
       (
        [AppDataId] => 16366 
        [JobTitle] => Resident Engineer - Mpumalanga 
        [Abstract] => Resident Engineer - Mpumalanga - Mpumalanga 
       ) 

     ) 

    [3] => 
) 

我需要得到這個到一個PHP數組,列出所有的JOBTITLE的或任何其他領域JSON多組顯示列表

我已經這樣做了,但我無法弄清楚如何首次訪問僅JOBTITLE ,然後列出所有這些。 $ json_url是輸出上述信息的json文件的實際url。

$json1 = file_get_contents($json_url); 
$array = json_decode($json1); 
echo "<pre>"; 
print_r($array); 
echo "</pre>"; 

$strJob=array(); 
foreach ($array as $value) { 
    $strJob[2][1]=$value->JobTitle; 
} 
echo '<br/>'; 
print_r($strJob); 
echo '<br/>'; 
+0

'$ strJob [2] [1] = $值 - > JOBTITLE;' - 現在怎麼是,應該使任何意義嗎?你在數組'$ strJob'中創建的唯一條目是鍵[2] [1]下的那個條目,並且在每次循環迭代中覆蓋該條目。 – CBroe

+0

您想循環使用'$ array [2]'開始,因爲只有它包含要循環的對象的子結構。然後,您只需將作業標題作爲_new_條目添加到您的數組中,即$ strJob [] = $ value-> JobTitle;' – CBroe

+0

我將如何遍歷$ array [2]? –

回答

1

您必須使用以下語法:

if(isset($array[2])) { 
    foreach ($array[2] as $value) { 
    echo 'JobTitle ->' . $value->JobTitle . '<br/>'; 
    echo 'AppDataId ->' . $value->AppDataId. '<br/>'; 
    } 
} 
+0

謝謝你,那就是我正在尋找的東西。 –