HP のグローバル変数はプログラミングに大きな柔軟性をもたらしますが、グローバル変数の制約のない性質は、大きな隠れた危険ももたらします。シングルトン パターンは、グローバル変数の適切な代替として使用できます。
花があるとします。それを見た人は皆、その花に水をやり、それを鑑賞します。
class flower{ function __construct(){ echo date('Y-m-d H:i:s').'浇了花'; } public function look(){ return '一朵美丽的花'; } } $a=new flower();//将输出:2013-01-08 09:37:54浇了花 echo $a->look();//将输出:一朵美丽的花 $b=new flower();//将输出:2013-01-08 09:37:54浇了花 echo $b->look();//将输出:一朵美丽的
人が増えれば、遅かれ早かれ花は枯れてしまうのは目に見えていますが、私たちが必要としているのは、最初に花を見た人が花に水をやる必要がないということです。花に水をやる。
class flower{ private static $instance; private function __construct(){ echo date('Y-m-d H:i:s').'浇了花'; } public static function getInstance(){ if(empty(self::$instance)){ self::$instance=new self(); } return self::$instance; } public function look(){ return '一朵美丽的花'; } } $a=flower::getInstance();//将输出:2013-01-08 09:52:43浇了花 echo $a->look();//将输出:一朵美丽的花 $b=flower::getInstance();//不会输出 echo $b->look();//将输出:一朵美丽的
シングルトン モードは、mysql データベース接続やその他の操作など、同じインスタンスを取得するだけでよい環境に適しています。
上記は PHP オブジェクト指向開発 - シングルトン モードの内容です。さらに関連した内容については、PHP 中国語 Web サイト (www.php.cn) をご覧ください。