• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

son_encode替代函数php_json_encode

php 搞代码 4年前 (2022-01-23) 36次浏览 已收录 0个评论

由于json_encode函数需要php5.20以上版本才支持,php不支持json_encode如何也用上json的功能呢?有没有什么替代函数,替代函数是没有的,不过有人做了一个自定义的php_json_encode,使用中会出现什么样的问题还未可知.

http://www.php.net/manual/zh/function.json-encode.php#74878

[php]
function php_json_encode($arr)
{
$json_str = “”;
if(is_array($arr))
{
$pure_array = true;
$array_length = count($arr);
for($i=0;$i<$array_length;$i++)
{
if(! isset($arr[$i]))
{
$pure_array = false;
break;
}
}
if($pure_array)
{
$json_str =”[“;
$temp = array();
for($i=0;$i<$array_length;$i++)
{
本文@来#源gaodai$ma#com搞$$代**码网搞代gaodaima码 $temp[] = sprintf(“%s”, php_json_encode($arr[$i]));
}
$json_str .= implode(“,”,$temp);
$json_str .=”]”;
}
else
{
$json_str =”{“;
$temp = array();
foreach($arr as $key => $value)
{
$temp[] = sprintf(“”%s”:%s”, $key, php_json_encode($value));
}
$json_str .= implode(“,”,$temp);
$json_str .=”}”;
}
}
else
{
if(is_string($arr))
{
$json_str = “””. json_encode_string($arr) . “””;
}
else if(is_numeric($arr))
{
$json_str = $arr;
}
else
{
$json_str = “””. json_encode_string($arr) . “””;
}
}
return $json_str;
}

function json_encode_string($in_str) {
mb_internal_encoding(“UTF-8”);
$convmap = array(0x80, 0xFFFF, 0, 0xFFFF);
$str = “”;
for ($i = mb_strlen($in_str)-1; $i>=0; $i–) {
$mb_char = mb_substr($in_str, $i, 1);
if (mb_ereg(“&#(\d+);”, mb_encode_numericentity($mb_char, $convmap, “UTF-8”), $match)) {
$str = sprintf(“\u%04x”, $match[1]) . $str;
} else {
$str = $mb_char . $str;
}
}
return $str;
}

[/php]

json_encode替代函数php_json_encode


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:son_encode替代函数php_json_encode
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址