今天写代码的时候,需要用到json_decode函数,发现PHP5.2以前的版本没有集成这个函数,不过我们可以通过自定义函数实现。
代码如下:
function json_decode2($json)
{
$comment = false;
$out = '$x=';for ($i=0; $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;
}
{
$comment = false;
$out = '$x=';for ($i=0; $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类了
原文链接:https://www.f2er.com/php/24613.html