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

博客主要介绍了PHP将JSON中数字值去除双引号,实现字符型转整型的方法。先给出二维数组转换为JSON数据的示例,展示整体转换效果,还提及若只需转换特定字段,其他字段不受影响的处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值