"クラス: " . __CLASS__ .
「トレイト:」 . __TRAIT__ .
特性シングルトン {
/**
* プライベート構造体、通常はクラスを使用して定義されます
*/
//プライベート関数 __construct() {}
public static function getInstance() {
static $_instance = NULL;
$class = __CLASS__;
return $_instance ?: $_instance = new $class;
}
パブリック関数 __clone() {
trigger_error('「.__CLASS__.」のクローン作成は許可されていません。',E_USER_ERROR);
}
パブリック関数 __wakeup() {
trigger_error('「.__CLASS__.」のシリアル化解除は許可されていません。',E_USER_ERROR);
}
}
/**
* 使用例
*/
クラス foo {
シングルトンを使用します;
プライベート関数 __construct() {
$this->name = 'foo';
}
}
クラスバー{
シングルトンを使用します;
プライベート関数 __construct() {
$this->name = 'バー';
}
}
$foo = foo::getInstance();
echo $foo->name;
$bar = bar::getInstance();
echo $bar->名前;
调用特性方法
これは明白ではありませんが、果Traitのような方法は、一般的な種類の静的な方法として定義されており、使用することができます
实例以下
特性フー {
関数 bar() {
'baz' を返します。
}
}
echo Foo::bar(),"\n";
http://www.bkjia.com/PHPjc/927607.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/927607.html技術記事 PHP の特性 - トレイト PHP 5.4.0 以降の新しい特性で、PHP はトレイトと呼ばれる、PHP の継承言語に似たメソッドを実装しています。