php – 如何将类的所有公共属性作为json?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何将类的所有公共属性作为json?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
考虑以下示例:

<?PHP

class p{
    public $name = 'jimmy';
    public $sex = 'male';
    PRivate $age = 31;
    // there should be more unkNow proPErties here ..

    function test(){
        echo $this->name;
    }

    function get_p_as_json(){
        // how can i get JSON of this class which contains only public properties ?
        // {"name":"jimmy","sex":"male"}
    }

}

$p = new p();
$json = $p->get_p_as_json();
echo $json;

问题:如何将类的所有公共属性作为JSON?

解决方法

你只需要从p创建另一个类q.然后代码如下所示:

class p{
    public $name = 'jimmy';
    public $sex = 'male';
    private $age = 31;
    // there should be more unkNow properties here ..

    function test(){
        echo $this->name;
    }
}

class q extends p{
    function get_p_as_json($p){
        return json_encode(get_object_VARs($p));
    }
}
$q  =   new q();
$p  =   new p();
$json   =   $q->get_p_as_json($p);
echo $json;

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何将类的所有公共属性作为json?全部内容,希望文章能够帮你解决php – 如何将类的所有公共属性作为json?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。