我需要从PHP数组生成JSON,白化转义/字符(大部分是URLs)。
在纯PHP中,我可以只执行json_encode($results, JSON_UNESCAPED_SLASHES); (在PHP 5.4.0+中)。
有没有办法,我可以实现相同的使用CJSON::encode();或任何其他YII1.x类?
发布于 2014-09-25 13:12:12
如果您阅读了CJSON的代码,您将看到它使用了标准的php (如果可以用于解码/编码函数)。不幸的是,它还没有达到5.4的速度,因为Yi1.x需要PHP5.1。
我建议您通过自己扩展CJON来添加额外的功能,如下所示:
class MyJSON extends CJSON {
public static function encode($var, $options = null, $depth = null)
{
if (function_exists('json_encode') && version_compare(PHP_VERSION, '5.5.0') >= 0) {
return json_encode($var, $options, $depth);
} elseif (function_exists('json_encode') && version_compare(PHP_VERSION, '5.3.0') >= 0) {
return json_encode($var, $options);
} else {
return parent::encode($var);
}
}
}https://stackoverflow.com/questions/26038993
复制相似问题