通过json传递一个php对象

时间:2015-07-31 07:10:36

标签: php json class

问题陈述:

我必须使用json将php对象从一个php应用程序传递给另一个。在我的目标应用程序中,我无法在json_decode之后访问我的成员函数。

以下是示例脚本:

<?php
class TestScope{
        private $privateVar;
        function __construct(){
                $this->privateVar="private";
        }
        function getPrivateVar(){
                return $this->privateVar;
        }
}
$testScope = new TestScope();
$encode = json_encode($testScope);
$decode = json_decode($encode);
print_r($decode->getPrivateVar());
?>

执行脚本后,我收到以下错误:

PHP Fatal error:  Call to undefined method stdClass::getPrivateVar()

防止此错误的可能解决方案是什么?

1 个答案:

答案 0 :(得分:0)

对我来说有用的是在将对象放入cookie,会话或数据库之前序列化和取消序列化对象。

我想它也可以解决这个问题: http://php.net/manual/en/language.oop5.serialization.php