json_encode 转义中文和反斜杠

json_encode 转义中文和反斜杠

未处理

php 项目开发经常遇到用 json_encode 处理参数然后加密去请求别的项目接口,如果其他项目是非 php 语言,容易在 json_encode 的时候出现中文转义和反斜杠转义的问题,导致加密参数出错。

$goods['name'] = '商品名称';
$goods['picture'] = 'http://localhost/mytest/images/test.jpg';
$goods['price'] = 19.9;
$goods['status'] = 1;
$goods['stock'] = 200;
echo json_encode($goods);

结果:

{"name":"\u5546\u54c1\u540d\u79f0","picture":"http:\/\/localhost\/mytest\/images\/test.jpg","price":19.9,"status":1,"stock":200}

处理中文转义

echo json_encode($goods);

结果:

{"name":"商品名称","picture":"http:\/\/localhost\/mytest\/images\/test.jpg","price":19.9,"status":1,"stock":200}

处理中文转义和反斜杠

echo json_encode($goods,320);
//echo json_encode($goods,JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES); //同上 JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 256 + 64 = 320

结果:

{"name":"商品名称","picture":"http://localhost/mytest/images/test.jpg","price":19.9,"status":1,"stock":200}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值