クラスで宣言されているインスタンスをグローバル化できますか?例えばクラスで宣言されているインスタンスをグローバル化できますか?
:
<?php
class Application
{
public $ioClass = new Class();
public $ioGlobalClass = new GlobalClass();
public function __construct()
{
// constructor
}
}
class Class
{
public function __construct()
{
// constructor
}
public function doSomething()
{
// is this possible?
global $ioGlobalClass;
echo $ioGlobalClass->helloWorld();
}
}
?>
は、だから私はグローバル$ ioGlobalClassを行うことができます。上記の例ではですか?
なぜあなたもしたいですか?グローバルとシングルトンからはっきりとしています。ほとんどいつもより良い方法で両方を処理し、それらを使用して後でトラブルにあなたを取得します。 – liquorvicar
その可能な場合は、ちょうど質問。その次には、非グローバル/非シングルトンのソリューションを試してみましたが、列車のパターンが壊れています。 – pascalvgemert
@liquorvicarシングルトンは本質的に悪ではありません - 時間と場所があります(セッション管理クラスに最適ですインスタンス) - しかし、それらはあなたが間違ってやっていることを知っているアプリケーションの中で多くのクラス:: getInstance()呼び出しを見つけるならば、怠け者になる可能性があります:) – CD001