Кодировать неэкранированный JSON в Yii 1.x

Мне нужно сгенерировать JSON из PHP-массива, без выхода / символы (в основном без URL).

В чистом PHP я могу сделать только json_encode($results, JSON_UNESCAPED_SLASHES); (в PHP 5.4.0+).

Есть ли способ, я могу добиться того же, используя CJSON::encode(); или любой другой класс Yii 1.x?

2

Решение

Если вы читаете код 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);
}
}
}
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]