首页 > 代码库 > json_decode的替代函数

json_decode的替代函数

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;
}

 

json_decode的替代函数