php语言中json实现的示例分析
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,小编给大家分享一下php语言中json实现的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php语言的json实现
千家信息网最后更新 2026年11月04日php语言中json实现的示例分析
小编给大家分享一下php语言中json实现的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
php语言的json实现
由于开发一个ajax file manager for web开源项目,数据交换使用的json格式,后来发现在低版本的php上运行会有问题,仔细调试发现json_decode和json_encode无法正常工作,于是查阅资料,发现低版本的php没有实现这两个函数,为了兼容性,我只好自己实现一个php版的json编码解码代码,并保证和json2.js的一致,测试调试并通过,现在将其公布出来,供有相同需求的同学使用:
) { $result = (array) json_decode($json); } else { $json = str_replace(array("\\\\", "\\\""), array("", ""), $json); $parts = preg_split("@(\"[^\"]*\")|([\[\]\{\},:])|\s@is", $json, -, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); foreach ($parts as $index => $part) { if (strlen($part) == ) { switch ($part) { case "[": case "{": $parts[$index] = "array("; break; case "]": case "}": $parts[$index] = ")"; break; case ":": $parts[$index] = "=>"; break; case ",": break; default: break; } } } $json = str_replace(array("", "", "$"), array("\\\\", "\\\"", "\\$"), implode("", $parts)); $result = eval("return $json;"); } } catch (Exception $e) { $result = array("error" => $e->getCode()); } return $result; } function valueTostr($val) { if (is_string($val)) { $val = str_replace('\"', "\\\"", $val); $val = str_replace("\\", "\\\\", $val); $val = str_replace("/", "\\/", $val); $val = str_replace("\t", "\\t", $val); $val = str_replace("\n", "\\n", $val); $val = str_replace("\r", "\\r", $val); $val = str_replace("\b", "\\b", $val); $val = str_replace("\f", "\\f", $val); return '"' . $val . '"'; } elseif (is_int($val)) return sprintf('%d', $val); elseif (is_float($val)) return sprintf('%F', $val); elseif (is_bool($val)) return ($val ? 'true' : 'false'); else return 'null'; } function jsonEncode($arr) { $result = "{}"; try { if (PHP_VERSION_ID > ) { $result = json_encode($arr); } else { $parts = array(); $is_list = false; if (!is_array($arr)) { $arr = (array) $arr; } $end = count($arr) - ; if (count($arr) > ) { if (is_numeric(key($arr))) { $result = "["; for ($i = ; $i < count($arr); $i++) { if (is_array($arr[$i])) { $result = $result . jsonEncode($arr[$i]); } else { $result = $result . valueTostr($arr[$i]); } if ($i != $end) { $result = $result . ","; } } $result = $result . "]"; } else { $result = "{"; $i = ; foreach ($arr as $key => $value) { $result = $result . '"' . $key . '":'; if (is_array($value)) { $result = $result . jsonEncode($value); } else { $result = $result . valueTostr($value); } if ($i != $end) { $result = $result . ","; } $i++; } $result = $result . "}"; } } else { $result = "[]"; } } } catch (Exception $e) { } return $result; } ?>以上是"php语言中json实现的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
语言
篇文章
示例
分析
内容
版本
相同
一致
不怎么
两个
代码
兼容性
函数
同学
大部分
数据
更多
格式
知识
编码
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手磨咖啡
广州为想互联网科技有限公司
互联网科技网
互联网科技公司经营范围
科技股互联网
科技互联网技术
中资互联网科技
互联网与新科技
互联网女皇 腾讯科技
互联网科技小额贷款
科技与互联网的利与弊
互联网科技实习生岗位职责
顶级互联网科技成果有哪些
移动互联网科技股
金融科技与互联网金融相同和不同
朱啸虎曾投资哪些互联网科技企业
广州千川互联网科技有限公司
广州有谷有贝互联网科技有限公司
数字科技和互联网金融哪个好
互联网的黑科技实验室
互联网科技公司的优势
互联网 科技
深圳科技互联网
创业天下互联网科技有限公司
科技互联网大厂
允成互联网科技有限公司融资
互联网科技如何创业
互联网公司高科技产品
恒生科技互联网指数十大成分股
互联网科技快速发展优美句子