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 नहीं बनाया जा सकता है। केवल एक ही ऑब्जेक्ट बनाया जाएगा और यानी पूरे एप्लिकेशन में उपलब्ध होगा।