php - 单例模式问题
我想大声告诉你
我想大声告诉你 2017-05-16 13:14:53
[PHP讨论组]

今天尝试写了一个单例模式,然后实例化两次这个单例对象,分别var_dump出来,现在结果第一个null,第二个显示是对象类型,这是怎么回事?麻烦各位老师看下,谢谢!

我想大声告诉你
我想大声告诉你

全部回复(2)
高洛峰

你应该把返回单例对象放在if判断外面不然第一次没有创建对象时无法返回对象
static public function GetConnec()

{
        if(!self::$instance instanceof self)
        {
            self::$instance =new self;//若当前对象实例不存在
        }
        $temp=self::$instance; //获取当前单例
        return $temp::Con() ;  //调用对象私有方法连接 数据库
}
迷茫

第一次调用没有将new出来的对象返回,所以为null,第二次调用singleton,由于第一次已经实例化了一个对象,则返回第一次实例化的对象,第二次又返回值,返回值为第一次调用实例化的对象

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号