數值索引陣列預設編碼為 JSON 陣列([]),若需強制輸出為對象({}),可使用 JSON_FORCE_OBJECT 選項。
<?php
$ary = ['a', 'b'];
echo json_encode($ary) . '<br>';
// 輸出: ["a","b"]
echo json_encode($ary, JSON_FORCE_OBJECT);
// 輸出: {"0":"a","1":"b"}
| 常量 | 作用 |
|---|---|
JSON_UNESCAPED_UNICODE | 中文不轉義為 \uXXXX,直接輸出可讀字符 |
JSON_UNESCAPED_SLASHES | 不轉義斜槠 / |
JSON_PRETTY_PRINT | 格式化縮進,便於調試 |
JSON_NUMERIC_CHECK | 數字字符串自動轉為數值型 |
組合使用示例:
json_encode($data, JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);