は、次のコードのシナリオを考えてみます。PHPのクラスのオブジェクトが既に存在するかどうかをチェックする方法は?
<?php
//widgetfactory.class.php
// define a class
class WidgetFactory
{
var $oink = 'moo';
}
?>
<?php
//this is index.php
include_once('widgetfactory.class.php');
// create a new object
//before creating object make sure that it already doesn't exist
if(!isset($WF))
{
$WF = new WidgetFactory();
}
?>
widgetfactoryクラスがwidgetfactoryclass.phpファイルであり、私は私のindex.phpファイルで、このファイルが含まれている、すべての私のサイトのアクションはそれぞれのためにすなわち、index.phpを通りますこのファイルが含まれるようになりましたが、既に存在していない場合にのみ、widgetfactoryクラスのオブジェクトを作成します。私はこの目的のためにisset()
を使用しています。
をこれは 'シングルトン' です:http://php.net/manual/en/language.oop5.patterns.php(例えば、#2を参照) –
HTTP ://us2.php.net/manual/en/function.class-exists.php – j08691
@ j08691 class_exist()は、オブジェクトが存在するかどうかを確認したいので、このケースを助けてくれません。クラスはありません。 – Rahul