将来的你
一定会感谢现在拼命努力的自己

PHP JSON_FORCE_OBJECT函数实现强转对象

JSON_FORCE_OBJECT

在多级数组中,JSON_FORCE_OBJECT会将所有嵌套数值数组编码为对象。

如果你只关注第一级数组(例如,使其适合作为MySQL JSON列),那么可以将第一级数组强制转换为对象,例如:

<?PHP
$ json = json_encode((object)$ array,JSON_PRESERVE_ZERO_FRACTION + JSON_UNESCAPED_UNICODE);
?>

JSON_PRESERVE_ZERO_FRACTION 确保浮点值始终编码为浮点值。自PHP 5.6.6起可用。

以下是JSON_FORCE_OBJECT 数字索引数组 强转对象使用案例

$abc = array('a','b','c','d','e','f','g');
echo '<pre>';
var_dump($abc);
echo json_encode($abc);

输出结果:[当数组下标为数字索引,,,,,,且为连续的]

$abc = array('a',2=>'b',3=>'c',4=>'d',5=>'e',6=>'f',7=>'g');
echo '<pre>';
var_dump($abc);
echo json_encode($abc);

输出结果:{当数组下标为数字索引,,,,,,且下标中间有断开的} 被解析为对象

$abc = array('a','b','c','d','e','f','g');
echo '<pre>';
var_dump($abc);
echo json_encode($abc,JSON_FORCE_OBJECT);

输出结果:{ 使用 JSON_FORCE_OBJECT 强制转换为对象 }

总结: 除了连续不断的索引数组 其他都被解析为object

赞(0) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@3yyy.top。文章观点不代表本站立场。本站原创内容未经允许不得转载:三叶运维 » PHP JSON_FORCE_OBJECT函数实现强转对象
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏