PHP 5.3(これは厄介ですが、同時に大丈夫です;私は柔軟性があります)にアップデートすることを拒否するホスティングがありますが、本当に私を驚かせる唯一の事は__callStaticを使用できません。PHP:5.2.xの__callStatic代替
モジュールをロードして、単一のクラスに統合したい(つまり、モジュールをロードするクラスを持っていて、メインクラスの__callStaticメソッドを呼び出すことによってそれらのモジュールの関数にアクセスします)が、明らかに__callStaticメソッドが動作しませんでした。
の代替品がありますか? static? $registry->some_func()
の代わりに、二重コロン(つまり、registry::some_func()
)のクリーンコードの外観が好きです。
これまで別のダウンサイドは、私は今、(私自身の好みによって非常にある、非常に乱雑)関数内global
キーワードを使用するように強制していますということです。
コードは、非静的メソッドの代わりに静的メソッドを使用することで非常に高速であり、さらにはきれいになっています。
も:私は5.2といつものように__callStaticメソッドを記述して、たとえばregistry::__callStatic("some_func"), array("val", "val2", "val3")
のために、明示的にメソッドを呼び出すと、単純にそのように物事を保つこと、も、彼らは5.3にアップグレードないときの移行が容易であることについて考えた 。この方法の考え?
ありがとうございます!
非常に賢明に:]私はこの時点で私自身の仕様であるという事実に同意します。私はいつも少しの魔法のlinuxコマンドを一緒にパイプして、コード全体を静的な呼び出しで置き換えることができます( '$'を削除し、 ' - 'を '::'に置き換えるだけです)。 – Qix