PHPのシングルトンパターンの使用方法

シングルトンパターンは、1つのクラスを1つのインスタンスのみに制限し、グローバルなアクセスを提供するためのデザインパターンです。

PHPでは、次の手順に従ってシングルトンパターンを実装できます。

  1. コンストラクタをプライベートとして宣言し、’new’キーワードによるインスタンス化を防ぐクラスを作成する。
  2. このクラスで、クラスの唯一のインスタンスを保持する静的変数を定義します。
  3. インスタンスがなければ、クラスのインスタンスを新たに作成してそれを返し、インスタンスがあれば、直接それを返す、そのクラス内でスタティックメソッドとして定義する。

簡単なサンプルコードを以下に示します。

class Singleton {
private static $instance;
private function __construct() {
// 私有构造函数
}
public static function getInstance() {
if (!self::$instance) {
self::$instance = new self();
}
return self::$instance;
}
public function doSomething() {
echo "Doing something...";
}
}
// 使用单例模式获取实例
$instance = Singleton::getInstance();
// 调用实例方法
$instance->doSomething();

上記の例ではSingletonクラスのインスタンスはgetInstanceメソッドでのみ取得でき、getInstanceメソッドを呼び出すたびに同じインスタンスを返します。

アプリケーション全体でSingletonインスタンスが1つのみ存在し、どこからでもgetInstanceメソッドで取得できることを保証します。

bannerAds