Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

แนวคิดการออกแบบซิงเกิลตันใน PHP คืออะไร?


Singleton Pattern ช่วยให้มั่นใจว่าคลาสมีเพียงหนึ่งอินสแตนซ์และให้จุดส่วนกลางในการเข้าถึง ทำให้แน่ใจว่ามีเพียงออบเจ็กต์เดียวเท่านั้นที่พร้อมใช้งานทั่วทั้งแอปพลิเคชันในสถานะควบคุม รูปแบบซิงเกิลตันให้วิธีในการเข้าถึงออบเจ็กต์เดียวซึ่งสามารถเข้าถึงได้โดยตรงโดยไม่จำเป็นต้องยกตัวอย่างอ็อบเจ็กต์ของคลาส

ตัวอย่าง

<?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();
?>

ผลลัพธ์

connection created

คำอธิบาย

ในตัวอย่างข้างต้น เนื่องจากเรากำลังติดตามรูปแบบซิงเกิลตัน ดังนั้น อ็อบเจกต์ $db2 จึงไม่สามารถสร้างได้ จะมีการสร้างวัตถุเพียงชิ้นเดียวและสามารถใช้ได้ทั่วทั้งแอปพลิเคชัน