【发布时间】:2013-12-22 22:35:05
【问题描述】:
我的 JSON 编码特殊,所以我需要删除右开括号之前的每个引号。 (例如 { 之前的每个 " ) 是否可以在 PHP 中执行此操作,如果可以,如何操作?
"{ 我想删除括号前所有出现的引号。
此处为 JSON:http://devticker.pw/json-data.php
代码在这里:
while($row = mysqli_fetch_array($result))
{
$data[] = '{"c": [{ "v": ' . $row['Timestamp'] . '"},{"v":' . $row['USD'] . '} ]}';
}
$str = json_encode(array("rows"=>$data));
$str = substr($str, 1);
$str = str_replace("\"{", "{", $str);
$str = '{"cols":[{"type":"string"},{"type":"number"}],' . $str;
$str = stripslashes($str);
echo $str;
【问题讨论】:
-
您正在操作原始 JSON 而不是数组中的元素,因为...?
-
我将 MySQL 数据库中的数据转换为数组(while 循环),然后对它们进行 json 编码。我不认为我可以从数组元素本身做到这一点。
-
好的。看起来您有一个 JSON 编码数组,其中的元素保存为 JSON 编码,而不是存储为一个 JSON 字符串的多维数组。给出的答案有望修复您的代码,但如果可能的话,您应该首先正确编码。你能展示生成它的代码吗?
-
贴出生成json的代码,或许我们可以帮你从源头修复。
-
我编辑了原来的问题,现在代码在那里