通常,當我會做一些這樣替代普通的PHP類
class Foo
{
public function Foo(){}
public function RandomFunction(){};
}
global $foo;
$foo = new Foo();
$foo->RandomFunction();
我已經注意到了網絡人於全局變量的類皺着眉上,但沒有它,我不會能夠訪問其他功能內的類。
我們這另一種方法是使用靜態階級作爲階級:
class Foo
{
static public function RandomFunction(){}
}
Foo::RandomFunction();
我的問題是這樣的,這是爲類全局變量的最佳替代品?還是有更好的方法可以將它們放在一起?
我不太確定你的目標是什麼。爲什麼'$ foo'需要在你的例子中是全局的?如果您想在其他函數中訪問該實例,則應該將其作爲參數傳遞。我有這樣的感覺,你正在使用一個容器(任意)函數的類... – 2011-06-02 14:18:45
如果你使用的是PHP5,請開始使用'__construct'。 – meagar 2011-06-02 14:26:41
那麼,例如,wordpress在其函數中使用全局$ foo,所以$ foo類可以從其他函數或類訪問。將它作爲參數傳遞聽起來是一個糟糕的主意。 – brenjt 2011-06-02 14:27:32