沃梦达 / 编程问答 / php问题 / 正文

将JSON整数和浮点数转换为字符串

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)

本文介绍了将JSON整数和浮点数转换为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望预先解析JSON,并在JSON中将整型和浮点值转换为字符串。此外,JSON中还有一些字符串值。

例如:

{
    "first_name": "sample",
    "last_name": "lastname",
    "integer" : 100,
    "float" : 1555.20
}

我只是使用here中的preg_replace()

echo preg_replace('/: *([0-9]+.?[0-9e+-]*)/', '"\1"', $jsonString);

但如果数组中有字符串值,则它不起作用,只有在数组中只有整数值和浮点值时,它才起作用。

有人能解释一下为什么会发生这种情况吗?

推荐答案

解决方案如下:

$str = '{"first_name":"sample",
          "last_name": "lastname",
          "integer" : 100,
          "float" : 1555.20,
          "createddate":"2015-06-25 09:57:28"}';

$result = preg_replace("/("w+":s*?)(d+.?[^,}]*)/imu",'$1"$2"',$str);

var_dump($result);

// output:
string(121) "{"first_name":"sample",
"last_name": "lastname",
"integer" : 100,
"float" : 1555.20,
"createddate":"2015-06-25 09:57:28"}"

这篇关于将JSON整数和浮点数转换为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:将JSON整数和浮点数转换为字符串