使用json_encode 將PHP 數組編碼為JSON 數組
在PHP 中,json_encode 函數對應於將PHPJ項。預設情況下,PHP 陣列被編碼為 JSON 物件。但是,在某些情況下,需要將陣列編碼為 JSON 陣列。
問題陳述
考慮下面的PHP 陣列:
$array = [ [ "id" => 0, "name" => "name1", "short_name" => "n1" ], [ "id" => 2, "name" => "name2", "short_name" => "n2" ] ];
在此陣列上呼叫json_encode 後,產生的JSON 是object:
{ "0": { "id": 0, "name": "name1", "short_name": "n1" }, "2": { "id": 2, "name": "name2", "short_name": "n2" } }
解
將 PHP 數組編碼為JSON 數組,數組必須是連續的,這意味著它的鍵必須是從 0 開始的連續整數。在提供的範例中,陣列鍵是 0 和 2,即不是連續的。 要讓數組連續,我們可以使用array_values 函數:echo json_encode(array_values($array));
[ { "id": 0, "name": "name1", "short_name": "n1" }, { "id": 2, "name": "name2", "short_name": "n2" } ]
以上是如何使用 json_encode 將 PHP 陣列編碼為 JSON 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!