首页 >php教程 >php手册 > 正文

单例模式之php实现

原创2016-06-13 10:54:370475
单例模式保证某个类只有一个实例;

1,静态成员变量保存类的唯一实例

2,声明构造函数和克隆方法为私有,防止new一个实例

3,提供一个公共的静态方法来访问这个实例,返回唯一实例的的引用

class InstanceDemo

{

private static $_instance;//静态成员变量保存唯一的实例

private function __construct()//构造函数

{

echo 'I am Construceted';

}

public static function GetInstance()

{

if(!isset(self::$_instance))

{

$c=__CLASS__;

self::$_instance=new $c;//new self()

}

return self::$_instance;

}

//覆盖__clone()方法,禁止克隆

private function __clone()

{

echo "禁止clone";

}

function test()

{

echo("test instance");

}

}

//调用静态的共有方法得到唯一的一个实例

$test = InstanceDemo::GetInstance();

$test->test();

//禁止克隆哦

$test_clone = clone $test;

?>

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 专题推荐

    作者信息

    php中文网

    认证0级讲师

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类