PHP 讓 json_encode() 指定回傳格式
来源:互联网 发布:gps信号增强软件 编辑:程序博客网 时间:2024/06/05 23:28
PHP 回傳 JSON 很方便, 只要將資料經過 json_encode() 就解決了.
不過因為 PHP 自動轉換型別, 造成很多資料都習慣存成字串, 希望在輸出 JSON 的時候, 數字部份可以輸出成數字, 該怎麼做呢?
另一個問題, PHP 轉換成 JSON, 部份陣列會被轉成对象(因為 JavaScript 陣列的 Key 必須是數字, 所以會轉成对象), 要全部強制轉成对象, 該怎麼做呢?
PHP 讓 json_encode() 指定回傳格式
上述的問題, json_encode() 的參數都可以解決.
json_encode() 有這些參數可以用:
- JSON_HEX_QUOT
- JSON_HEX_TAG
- JSON_HEX_AMP
- JSON_HEX_APOS
- JSON_NUMERIC_CHECK
- JSON_PRETTY_PRINT
- JSON_UNESCAPED_SLASHES
- JSON_FORCE_OBJECT
PHP 判斷型別輸出 JSON 數字型態
主要靠 json_encode 的 JSON_NUMERIC_CHECK 參數, ex:
<?phpechojson_encode(array('id'=>'123', 'data' =>'abc'), JSON_NUMERIC_CHECK);echojson_encode(array('id'=>'123', 'data' =>'abc'));echojson_encode(array('id'=>123, 'data' =>'abc'));?>輸出結果
- {"id":123,"data":"abc"}
- {"id":"123","data":"abc"}
- {"id":123,"data":"abc"}
PHP 強迫輸出 JSON 物件(对象)格式
主要靠 json_encode 的 JSON_FORCE_OBJECT 參數, ex:
<?phpechojson_encode(array(1,2, 3));echojson_encode(array(1,2, 3), JSON_FORCE_OBJECT);echojson_encode(array(array(1,2, 3)));echojson_encode(array(array(1,2, 3)), JSON_FORCE_OBJECT);echojson_encode(array(1=>123, 2 =>'abc'));?>輸出結果
- [1,2,3]
- {"0":1,"1":2,"2":3}
- [[1,2,3]]
- {"0":{"0":1,"1":2,"2":3}}
- {"1":123,"2":"abc"} // 本來就會輸出 Object
0 0
- PHP 讓 json_encode() 指定回傳格式
- php json_encode 格式输出 数组转 json
- PHP在使用json_encode格式转换问题
- PHP json_encode
- PHP json_encode
- php json_encode
- php json_encode
- PHP-json_encode
- PHP json_encode
- PHP json_encode()
- json_encode.php
- php json_encode()
- MySQL 存储php中json_encode格式中文问题及解决
- PHP中MySQL存储json_encode格式中文问题解决
- php 获取指定格式时间
- php 关于json_encode/json_decode和json_encode/unserialize
- php json_encode 问题解决小记
- PHP json_encode() 函数介绍
- cocos2d-x坐标系详解 (对于新手有点用)
- html5视频控制效果
- Objective-C之NSLog
- 常见排序算法概述
- 浅谈PHP第四弹---递归函数
- PHP 讓 json_encode() 指定回傳格式
- java并发编程实践学习(二)由可重入锁想到的
- 完成一个商品的购买功能
- SQL Server 2005 中的XML数据类型
- 充值系列——充值系统的架构(二)
- 文本消息
- 杂谈
- try catch finally执行顺序
- 【noi2005试题】瑰丽华尔兹 单调队列优化DP