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)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » PHP JSON_FORCE_OBJECT函数实现强转对象

登录

找回密码

注册