[PHP] - json_encode 함수 5.2 버전 이상은 기본 함수로 사용가능 없을때...

PHP 2012. 4. 23. 11:33
반응형

function json_encode($data) {

switch (gettype($data)) {

case 'boolean':

return $data?'true':'false';

case 'integer':

case 'double':

return $data;

case 'string':

return '"'.strtr($data, array('\\'=>'\\\\','"'=>'\\"')).'"';

case 'array':

$rel = false; // relative array?

$key = array_keys($data);

foreach ($key as $v) {

if (!is_int($v)) {

$rel = true;

break;

}

}


$arr = array();

foreach ($data as $k=>$v) {

$arr[] = ($rel?'"'.strtr($k, array('\\'=>'\\\\','"'=>'\\"')).'":':'').json_encode($v);

}


return $rel?'{'.join(',', $arr).'}':'['.join(',', $arr).']';

default:

return '""';

}

}

반응형
: