php - 在 Yii 1.x 中编码未转义的 JSON

标签 php json yii escaping encode

我需要从 PHP 数组生成 JSON,不转义 / 字符(主要是 un URL)。

在纯 PHP 中,我只需 json_encode($results, JSON_UNESCAPED_SLASHES); (在 PHP 5.4.0+ 中)。

有没有办法,我可以使用 CJSON::encode(); 或任何其他 Yii 1.x 类实现相同的目的?

最佳答案

如果你读到CJSON的代码,您会看到它使用标准 php(如果可用于解码/编码功能)。不幸的是,它还没有达到 5.4 的速度,因为 Yii 1.x 需要 PHP 5.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);
        }
    }
}

关于php - 在 Yii 1.x 中编码未转义的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26038993/

相关文章:

php - Swift 邮件附件

php - 如何在 yii2 中向 listview 传递一个额外的变量

php - 将值从一个 php 文件传递​​到另一个 php 文件

php - 正则表达式:如果字符串包含括号内的特定单词,则删除括号及其内容

php - Symfony 4 在服务中使用 Doctrine

python - 无法用python解析 simplejson

java - 想获取php数据到android

php - 如何选择和获取yii的Cgridvew的行id

PHP和数据库连接错误

javascript - 如何更改 PHP 电子邮件表单(返回部分)以匹配 Javascript 和 html 模板?