> php教程 > PHP开发 > 본문

son_encode 대체 함수 php_json_encode

高洛峰
풀어 주다: 2016-11-28 16:48:22
원래의
1380명이 탐색했습니다.

json_encode 기능을 지원하려면 php5.20 이상이 필요한데, php에서 json_encode를 지원하지 않는 경우 어떻게 json 기능을 사용할 수 있나요? 대체 함수는 없나요? 그런데 누군가가 php_json_encode를 커스텀으로 만들어놨네요.

[php]
함수 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++)                                                                              🎜>          $json_str .= implode(",",$temp);
                  $json_str                                    > $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))
                               >                                           "" ;
}
}
return $json_str;
}

function json_encode_string($in_str) {
mb_internal_encoding("UTF-8");
$convmap = 배열(0x80, 0xFFFF, 0, 0xFFFF);
$str = "";
for ($i = mb_strlen($in_str)-1; $i>=0; $i--) {
                                                                  match 사용)) {
           $str = sprintf("u%04x", $match[1]) $str;
                                                                      
}
$str 반환;
}

[/php]

json_encode 대체 함수 php_json_encode

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿