php5.2以下版本无json_decode函数的解决方法


Posted in PHP onMay 25, 2014

今天写代码的时候,需要用到json_decode函数,发现php5.2以前的版本没有集成这个函数,不过我们可以通过自定义函数实现。

function json_decode2($json)
{
$comment = false;
$out = '$x=';for ($i=0; $i<strlen($json); $i++)
{
if (!$comment)
{
if (($json[$i] == '{') || ($json[$i] == '[')) $out .= ' array(';
else if (($json[$i] == '}') || ($json[$i] == ']')) $out .= ')';
else if ($json[$i] == ':') $out .= '=>';
else $out .= $json[$i];
}
else $out .= $json[$i];
if ($json[$i] == '"' && $json[($i-1)]!="\\") $comment = !$comment;
}
    eval($out . ';');
return $x;
}

不过这个返回的是Array

要返回object 则要用到 service_json类了

PHP 相关文章推荐
判“新”函数:得到今天与明天的秒数
Oct 09 PHP
php 无限级 SelectTree 类
May 19 PHP
UTF8编码内的繁简转换的PHP类
Jul 09 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
Apr 09 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
Jun 29 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
Jun 12 PHP
php实现网站留言板功能
Nov 04 PHP
ThinkPHP中order()使用方法详解
Apr 19 PHP
PHP中session跨子域的三种实现方法
Jul 25 PHP
php 中的closure用法详解
Jun 12 PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 PHP
laravel实现于语言包的完美切换方法
Sep 29 PHP
模板引擎smarty工作原理以及使用示例
May 25 #PHP
浅析php中json_encode()和json_decode()
May 25 #PHP
浅析PHP微信支付通知的处理方式
May 25 #PHP
PHP开发微信支付的代码分享
May 25 #PHP
php定时计划任务与fsockopen持续进程实例
May 23 #PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
May 23 #PHP
PHP解析html类库simple_html_dom的转码bug
May 22 #PHP
You might like
PHP文件上传主要代码讲解
2013/09/30 PHP
PHP连接和操作MySQL数据库基础教程
2014/09/29 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
两种php实现图片上传的方法
2016/01/22 PHP
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
javascript arguments使用示例
2014/12/16 Javascript
jQuery过滤选择器用法分析
2015/02/10 Javascript
jQuery中prepend()方法使用详解
2015/08/11 Javascript
浅谈node.js中async异步编程
2015/10/22 Javascript
详解Bootstrap插件
2016/04/25 Javascript
js实现一个可以兼容PC端和移动端的div拖动效果实例
2016/12/09 Javascript
详解微信小程序 wx.uploadFile 的编码坑
2017/01/23 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
JS实现分页浏览横向图片(类轮播)实例代码
2017/11/06 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
微信小程序实现的3d轮播图效果示例【基于swiper组件】
2018/12/11 Javascript
jQuery实现左右两个列表框的内容相互移动功能示例
2019/01/27 jQuery
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
vue+Element中table表格实现可编辑(select下拉框)
2020/05/21 Javascript
使用JavaScript通过前端发送电子邮件
2020/05/22 Javascript
python解析json实例方法
2013/11/19 Python
在Python的Flask框架中使用模版的入门教程
2015/04/20 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
PyTorch线性回归和逻辑回归实战示例
2018/05/22 Python
python pandas 时间日期的处理实现
2019/07/30 Python
python利用paramiko实现交换机巡检的示例
2020/09/22 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
沙特阿拉伯电子产品和家用电器购物网站:Black Box
2019/07/24 全球购物
C语言编程题
2015/03/09 面试题
数学系个人求职信范文
2014/01/30 职场文书
开工典礼策划方案
2014/05/23 职场文书
2015年库房工作总结
2015/04/30 职场文书
交通事故案件代理词
2015/05/23 职场文书
MySQL基础快速入门知识总结(附思维导图)
2021/09/25 MySQL