ホームページ >php教程 >php手册 >PHP シングルトン モードの実装 (オブジェクトは 1 回だけ作成されます)

PHP シングルトン モードの実装 (オブジェクトは 1 回だけ作成されます)

WBOY
WBOYオリジナル
2016-06-13 11:56:191211ブラウズ

シングルトン クラスには、少なくとも次の 3 つのパブリック要素があります:

コンストラクターが必要であり、プライベートとしてマークされている必要があります。
クラスのインスタンスを保持する静的メンバー変数があります。
このインスタンスにアクセスするパブリック静的メソッドがあります

具体的な使用法に関しては、以下の php の例で明確にコメントしました。

コードをコピーします コードは次のとおりです:


/**
* www.phpddt.com による
 */
class Mysql{
//この属性はインスタンスを保存するために使用されます
private static $conn;
//コンストラクターはプライベートです。オブジェクトの作成を防止します
プライベート関数 __construct(){
$this->conn = mysql_connect('localhost','root','');
}
//インスタンスを作成する Object メソッド
public static function getInstance(){
if(!(self::$conninstanceof self)){
self::$conn = new self;
}
return self::$conn;
}
//オブジェクトのコピーを防止します
public function __clone(){
trigger_error('クローンは許可されていません!');
}

}
//この方法でのみインスタンスを取得できます。新規作成やクローン作成はできません
$mysql = Mysql::getInstance();
?>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。