Computer >> Máy Tính >  >> Lập trình >> PHP

Khái niệm thiết kế singleton trong PHP là gì?


Singleton Pattern đảm bảo rằng một lớp chỉ có một thể hiện và cung cấp một điểm chung để truy cập nó. Nó đảm bảo rằng chỉ có một đối tượng có sẵn trên toàn bộ ứng dụng ở trạng thái được kiểm soát. Mẫu Singleton cung cấp một cách để truy cập đối tượng duy nhất của nó có thể được truy cập trực tiếp mà không cần khởi tạo đối tượng của lớp.

Ví dụ

Cơ sở dữ liệu lớp
<?php
   class database {
      public static $connection;
      private function __construct(){
         echo "connection created";
      }
      public function connect(){
         if(!isset(self::$connection)){
            self::$connection = new database();
         }
         return self::$connection;
      }
   }
   $db = database::connect();
   $db2 = database::connect();
?>

Đầu ra

connection created

Giải thích

Trong ví dụ trên, chúng ta đang làm theo một mẫu singleton nên không thể tạo đối tượng $ db2. Chỉ một đối tượng duy nhất sẽ được tạo và tức là có sẵn trên tất cả ứng dụng.