Global を使用してクラスインスタンスをフェッチすることなく、別のクラスからクラスメソッドを呼び出す最良の方法を探しています。「グローバルは悪」であることがわかりました。
これをさらに説明するコードを次に示します。
class Assets{
public $assets = array();
public function add($asset){
$this->assets[] = $asset;
}
}
ここで、ここから Assets/call メソッドを呼び出したい..
$assets = new Assets;
class Form{
public function __construct(){
global $assets;
$assets->add('Form');
}
}
そのようなシナリオでグローバルを使用しているのはそれが悪いですか? もしそうなら、他にどのような方法が最善であると考えられていますか?
PS: クラスのインスタンスを 1 つだけ操作する必要があります。2 番目のクラス内に新しいインスタンスを作成したくないということです。