我们的PHP API使用启用了JSON_NUMERIC_CHECK的json_encode输出结果,这对于财务数字、二进制值等非常重要。但是我们最近引入了一个电话号码字段,当它将数字转换为整数时,它会删除数字开头的零。
我曾尝试在值转到json_encode之前强制使用"(string)“类型,但看起来函数正在覆盖它。例如:
$output = array(
'is_bool' => 1,
'total_amount' => '431.65',
'phone_number' => (string) '0272561313'
);
echo json_encode($output,JSON_NUMERIC_CHECK);产生:
{"is_bool":1,"total_amount":431.65,"phone_number":272561313}任何关于如何最好地处理这一点的建议都将不胜感激。我真的不想在电话号码的末尾添加尾随空格,当它只是作为一个字符串输出时。
谢谢!
发布于 2016-02-04 07:41:05
不管怎样,我也遇到过类似的问题,因为我的国际电话号码都是以+符号开头的。我在我的电话号码串上使用了urlencode来解决这个问题:
$phone = urlencode( $phone );https://stackoverflow.com/questions/24520950
复制相似问题