我知道php上有一个json_encode。目前我们正在使用它。但这是唯一减慢应用程序速度的因素,因为它需要进入服务器。
这是情况,我们2个应用程序。我们称他们为app1和app2。
App1是一个很大的应用程序。其中一个输入是一个php数组。
另一方面,app2是为帮助app1而创建的一个小应用程序。 App2有一个表格。表格有很多领域。然后所有这些字段都将转换为正确的php数组格式,可以在app1中用作输入。
现在我们的问题,每次我们使用app2时,我们应该更加小心或始终保持字段。如果有一个字段有错误的信息,我们需要再次执行,使用app2来获取正确的数组。
因此,我们认为我们需要在app2上添加一项功能。我们希望它能够编辑它产生的php数组。我们已经做到了。当给出php数组时,我们将它发送到服务器,使用json_encode,然后将所有内容放到位。现在我们填充了所有字段,然后我们可以使用不正确的数据编辑字段。
目前,我们对此感到满意,但我认为不去服务器并使用js转换php数组更有效...我搜索了google和stackoverflow,我什么都没发现。我确实尝试过使用.replace(),但我还没有想到它是一个很好的结果..
我希望有人可以帮助我..
修改
顺便说一下,这是一个PHP数组格式......
作为简单示例,我们必须输入字段。填写完字段后,它将在textarea中输出PHP数组格式。
答案 0 :(得分:1)
从你的评论中,你似乎在说你在这样的textarea中有一个字符串:
<textarea>array('a'=>'goat', 'b' => 'dog')</textarea>
我真的不明白为什么你的应用程序会首先在textarea中放入任何“代码”类型的结果,更不用说一个PHP格式的数组字符串,但是试图回答你关于如何要使用JavaScript将这样的字符串转换为JS对象,您可以这样做:
// assuming your textarea has the id "myTextArea":
var str = document.getElementById("myTextArea").value,
json = "{" + str.slice(6, -1).replace(/=>/g,":").replace(/'/g,"\"") + "}";
console.log(json);
var obj = JSON.parse(json);
console.log(obj);
我将两个console.log()
语句放入其中,以便您可以看到字符串在被操作为JSON格式后的样子,然后在解析了JSON后查看生成的对象。
请注意,如果字符串采用任何其他格式,并且数组中的项目包含正在替换但不会产生错误但会产生错误结果的字符,则此代码显然会因错误而中断。
答案 1 :(得分:0)
您可以在
下转换json格式$array = array("hola","hello");
exit(json_encode($array));
output json // {"hola","hello"}
在js
sucess(x){
}