PHP 단일형 디자인 패턴(싱글톤 패턴) example_php 기술

WBOY
풀어 주다: 2016-05-16 20:31:21
원래의
1205명이 탐색했습니다.

단형 디자인 패턴은 싱글톤 패턴이라고도 합니다.

1. 모노모픽 디자인 패턴의 의미:

단형 패턴의 주요 기능은 객체 지향 프로그래밍 설계에서 클래스가 하나의 인스턴스 객체만 가질 수 있도록 하는 것입니다. 객체 생성 패턴인 싱글톤 패턴은 클래스에 하나의 인스턴스만 있도록 하고 자체적으로 인스턴스화하며 이 인스턴스를 전체 시스템에 전역적으로 제공합니다. 인스턴스의 복사본을 생성하지 않지만 싱글톤 클래스에 내부적으로 저장된 인스턴스에 대한 참조를 반환합니다.

2. 싱글 모드의 핵심 포인트 3가지:

① 클래스의 고유한 인스턴스를 보유하는 정적 멤버 변수가 필요합니다.
②생성자와 복제 함수는 외부 프로그램이 새 클래스를 추가하여 싱글톤 모드의 의미를 잃지 않도록 비공개로 선언해야 합니다.
③ 이 인스턴스에 액세스하려면 공용 정적 메서드(일반적으로 getInstance 메서드)를 제공하여 고유한 인스턴스에 대한 참조를 반환해야 합니다.

코드 복사 코드는 다음과 같습니다.

클래스 DB {
Private static $obj = null; //비공개 정적 멤버 속성 $obj를 선언합니다
Private function__construct() { //Private 생성자 메서드는 클래스 내부의 객체만 인스턴스화할 수 있습니다
echo "데이터베이스에 성공적으로 연결되었습니다
";
}
Public static function getInstance() { // 이 클래스의 객체는 이 정적 메서드를 통해 얻을 수 있습니다
If(is_null(self::$obj)) //이 클래스의 $obj가 비어 있으면 아직 인스턴스화되지 않았음을 의미합니다
                self::$obj = new self() // 이 클래스 객체 인스턴스화
                return self::$obj; //이 클래스의 객체 반환
}
공용 함수 쿼리($sql) { //SQL 문을 실행하여 데이터베이스 작업을 완료합니다
에코 $sql;
}
}
$db = DB::getInstance(); //DB 클래스의 객체를 얻기 위해서는 정적 메소드 getInstance()만 사용할 수 있습니다
$db -> query("select *from user"); //객체의 멤버에 액세스
?>
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿