加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 静态对象中的魔术方法

发布时间:2020-12-13 16:22:59 所属栏目:PHP教程 来源:网络整理
导读:我正在努力实现这一目标.我有会话管理器类,它是我为我的框架开发的东西.我需要有唯一的会话密钥,所以不要做这样的事情: $_SESSION['foo'] = $bar; 我这样做: Session::set('foo',$bar); 并且set函数将执行以下操作: $_SESSION[$unique.'foo'] = $bar; 它
我正在努力实现这一目标.我有会话管理器类,它是我为我的框架开发的东西.我需要有唯一的会话密钥,所以不要做这样的事情:

$_SESSION['foo'] = $bar;

我这样做:

Session::set('foo',$bar);

并且set函数将执行以下操作:

$_SESSION[$unique.'foo'] = $bar;

它很好,它的工作原理,但我想像这样使用它:

Session['foo'] = $bar

或者像这样:

Session->foo = $bar

我发现我无法使用 – >在静态对象中,我也不能使用像__set和__get这样的魔术函数.那么,有什么方法可以实现这种行为?

解决方法

让你的会话类成为单身人士?

class Session
{
   public static $instance;

   public static function init()
   {
        self::$instance = new Session();
   }    

    public function __get($key)
    {
        return $_SESSION[$key];
    }
}

然后像这样使用它:

echo(Session::$instance->foo);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读