PHP実装のインスタンス化回数を制限するクラスの例
1352 ワード
本明細書の例では、PHPがインスタンス化回数を制限するクラスを実装することについて説明する.皆さんの参考にしてください.具体的には以下の通りです.
実現構想.インスタンス化オブジェクトを保存するためのstatic変数$countを定義します. は、$countの値を判断し、さらにオブジェクトをインスタンス化するか否かを判断するstaticメソッドcreateを定義する. 構造関数を定義し、$count+1 は構造関数を定義し、$count-1 インプリメンテーションコード
実行結果:
create one create two destory two create three destory three destory one
PHPに関する詳細について興味のある読者は、「phpオブジェクト向けプログラム設計入門チュートリアル」、「PHP配列(Array)操作テクニック大全」、「PHP基本文法入門チュートリアル」、「PHP演算と演算子用法総括」、「php文字列(string)用法総括」、「php+mysqlデータベース操作入門チュートリアル」および「php一般データベース操作テクニック要約」
ここで述べたことが皆さんのPHPプログラム設計に役立つことを願っています.
実現構想.
";
$this->name = $name;
self::$count++;
}
public function __destruct(){
echo "destory ".$this->name."
";
self::$count--;
}
public static function create($name){
if(self::$count>2){
die("you can only create at most 2 objects.");
}else{
return new self($name);
}
}
}
$one = demo::create("one");
$two = demo::create("two");
$two = null;
$three = demo::create("three");
実行結果:
create one create two destory two create three destory three destory one
PHPに関する詳細について興味のある読者は、「phpオブジェクト向けプログラム設計入門チュートリアル」、「PHP配列(Array)操作テクニック大全」、「PHP基本文法入門チュートリアル」、「PHP演算と演算子用法総括」、「php文字列(string)用法総括」、「php+mysqlデータベース操作入門チュートリアル」および「php一般データベース操作テクニック要約」
ここで述べたことが皆さんのPHPプログラム設計に役立つことを願っています.