PHP将json中的数字值去除掉双引号(字符型转整形)

10 篇文章 0 订阅

PHP将json中的数字值去除掉双引号(字符型转整型)

假设我们现在有如下一个二维数组:

Array
(
    [0] => Array
        (
            [id] => 0
            [name] => 小红
            [age] => 17
        )

    [1] => Array
        (
            [id] => 1
            [name] => 小红
            [age] => 17
        )

    [2] => Array
        (
            [id] => 2
            [name] => 小红
            [age] => 17
        )

)

使用json_encode()函数将其转换为json数据如下:

[{"id":"0","name":"\u5c0f\u7ea2","age":"17"},
{"id":"1","name":"\u5c0f\u7ea2","age":"17"},
{"id":"2","name":"\u5c0f\u7ea2","age":"17"}]

我们想要去掉id的值的双引号,也就是将id值由字符串换为数字,有一个方法:

//JSON_NUMERIC_CHECK -> 将所有数字字符串编码成数字(numbers)
$data_json = json_encode($data, JSON_NUMERIC_CHECK);

结果为:

[{"id":0,"name":"\u5c0f\u7ea2","age":17},
{"id":1,"name":"\u5c0f\u7ea2","age":17},
{"id":2,"name":"\u5c0f\u7ea2","age":17}]

此时我们发现不光是id的值转为了整型,age的值也转为了整型;

如果只需要将id转换(或某个字段)转换其他字段不受影响可以:

foreach($data as $k => $v){
	$v['id'] = (int)$v['id'];
	// 这里注释的为自己可以增加新的字段
	// $v['age'] = (int)$v['age'];
	$data_arr[] = $v;
}
$data_json = json_encode($data_arr);

结果为:

[{"id":0,"name":"\u5c0f\u7ea2","age":"17"},
{"id":1,"name":"\u5c0f\u7ea2","age":"17"},
{"id":2,"name":"\u5c0f\u7ea2","age":"17"}]
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值