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 중국어 홈페이지(www.php.cn)를 참고해주세요!