簡體   English   中英

從MySQL / PHP獲取嵌套/分層JSON

[英]Get nested/hierarchical JSON from MySQL/PHP

我正在使用spacetree圖表,並且我需要分層格式的JSON。 在此處查看示例所需的JSON格式。 我在Mysql數據庫表中有ID,ParentID,Name,Description字段。 現在如何使用PHP在Hierarchical / nested JSON中轉換數據? 我知道json_encode($ array)。 但是,我需要為此嵌套/分層php數組。 讓我知道這樣做。

您基本上是在這里問兩個問題-1)如何從db表中獲取分層的php結構,以及2)如何在json中編碼此結構。 對於第一個問題,請參閱我的代碼 (舊的但可以正常使用的代碼) 第二,我相信簡單的json_encode可以很好地工作。

如果您在服務器上安裝了PHP json擴展名,則只需在陣列上使用它即可。 步驟將是:

  1. 使用基於MySQL結果的層次結構構建PHP數組
  2. 呼叫json_encode($ array) http://pl.php.net/manual/en/function.json-encode.php

如果您沒有在服務器上啟用json_encode並且無法安裝它,則只需手工編寫即可。

將會是這樣(未經測試的代碼警告)

function my_json_encode($array)
{
  $return = '{';
  $count = count($array);
  $i = 0;
  foreach ($array as $key => $val)
  {
    $return .= '"'.$key.'" : ';
    if (!is_array($val))
      $return .= '"'.$val.'"';
    else
      $return .= my_json_encode($val);
    if ($i < $count-1)
      $return .=",";
    $i++;
  }
  $return .= '}';
  return $return;
}

暫無
暫無

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

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