如何在没有PHP5.2的情况下使用json_编码
我已经编写了一个CMS,它使用PHP函数json_encode通过Ajax请求发送一些数据回来 不幸的是,我试图将其加载到运行PHP 5.1版的服务器上,json_encode PHP函数在PHP 5.2.0之前的版本上不可用 有人知道不使用内置的JSON_encode函数将PH数组编码为JSON的方法吗 编辑 我已经使用了Pekka的函数,但是现在我发现JQuery不会像预期的那样解析结果。即使Firebug显示JSON被传回。我的firebug窗口如下所示: 我的jquery如下所示:如何在没有PHP5.2的情况下使用json_编码,php,ajax,json,Php,Ajax,Json,我已经编写了一个CMS,它使用PHP函数json_encode通过Ajax请求发送一些数据回来 不幸的是,我试图将其加载到运行PHP 5.1版的服务器上,json_encode PHP函数在PHP 5.2.0之前的版本上不可用 有人知道不使用内置的JSON_encode函数将PH数组编码为JSON的方法吗 编辑 我已经使用了Pekka的函数,但是现在我发现JQuery不会像预期的那样解析结果。即使Firebug显示JSON被传回。我的firebug窗口如下所示: 我的jquery如下所示:
$.ajax({
type: "GET",
url: "includes/function/add_users.php",
data: str,
dataType: 'json',
cache: false,
beforeSend: function(html){
$('#editbox').html('<img class="preloader" src="images/ajax-loader.gif"/>');
},
success: function(html){
fields = html;
$('#div1').html(fields['username']);
$('#div2').html(fields['fname']);
$.ajax({
键入:“获取”,
url:“includes/function/add_users.php”,
数据:str,
数据类型:“json”,
cache:false,
发送前:函数(html){
$('#editbox').html('');
},
成功:函数(html){
字段=html;
$('#div1').html(字段['username']);
$('#div2').html(字段['fname']);
但是div:#div1和#div2不会加载正确的数据
为什么?我点击了谷歌。。。
此人制作了自己的编码器:
您可以使用。用户提供的注释有许多实现。粗略地看,在我看来是最好的
如果您有权访问PECL,我将使用@Artefactor推荐的扩展。如果您使用的是旧版本的PHP,您可以使用。它工作得很好!好的,工作得很好-firebug显示传递了JSON。但是Jquery不喜欢它…好的-请参阅扩展问题above@Ashley您需要显示一些实际的JSON,以便我们可以告诉w这是不对的。或者,@Mark Baker的建议看起来也很有趣。@Ashley JSON结果不是一个对象吗?这意味着您需要使用
字段。username
?在用户贡献的笔记上提出了一个新的实现,似乎也很好。值得一试:我假设您正确地关闭了ajax语句?关闭b是成功函数,还是整个ajax函数?是的,它们被正确地关闭了,我只包含了代码的相关部分