从php编译成JSon的最快方法

时间:2015-05-22 16:03:15

标签: php json cakephp

我正在使用cakePHP,当处理Json时,它使用的是json_encode。不幸的是,这对我来说很慢。我正在处理需要一些时间的巨大请求。

有人对替代方案有任何建议吗?

1 个答案:

答案 0 :(得分:1)

我不知道为什么你的json_encode运行缓慢,主要是因为你没有提供一行代码,但我可以建议一些可能会或可能不会帮助你的东西,你可以随时实现一个界面对于您的类(如果您使用类作为模型),该接口称为JsonSerializable,这将使您实现一个名为jsonSerialize的方法,将在您调用json_encode时执行使用给定类的实例。你可以在那里过滤你想要编码的内容以及你想从编码中排除什么,所以如果你有很多你不需要编码的属性,你可以过滤它们,也许过程会更快。这是一个粗略的例子:

<?php

namespace Foo\Bar;

use JsonSerializable;

class Baz implements JsonSerializable
{
    private $_one;
    private $_two;
    private $_three;
    private $_four;

    public function jsonSerialize()
    {
         return $_one; //Only serialize this property.
        //return get_object_vars($this); //this would be the default.
    }

}