class Database { private static $instance = null; private $connection; private function __construct() { $this->connection = new PDO("mysql:host=localhost;dbname=mydatabase", "username", "password"); } public static function getInstance() { if (self::$instance == null) { self::$instance = new Database(); } return self::$instance; } public function getConnection() { return $this->connection; } } $db = Database::getInstance(); $connection = $db->getConnection();
class Config { private static $instance = null; private $settings; private function __construct() { $this->settings = parse_ini_file("config.ini"); } public static function getInstance() { if (self::$instance == null) { self::$instance = new Config(); } return self::$instance; } public function getSetting($key) { return $this->settings[$key]; } } $config = Config::getInstance(); $setting = $config->getSetting("database_host");Package Library: The App getInstance pattern is not a package library but a design pattern commonly used in most PHP frameworks and libraries as a standard way of managing shared resources across applications.