だから私はPHP5.3へのアップデートを拒否するホスティングを持っています(これは迷惑ですが同時に問題ありません;私は柔軟性があります)が、本当に私を悩ませているのは__callStaticが利用できないことだけです。
単一のクラスに統合したいモジュールをロードしました(つまり、モジュールをロードし、メインクラスの__callStaticメソッドへの呼び出しを介してそれらのモジュールの関数にアクセスするクラスがあります)が、ローカルからアップロードした場合サーバーをサーバーにテストしましたが、明らかに__callStaticメソッドが機能しませんでした。
まだ静的な代替手段はありますか?registry::some_func()
クリーンなコードで、の代わりに二重コロン(つまり)を探すのが好きです$registry->some_func()
。
これのもう1つの欠点は、global
関数内でキーワードを使用することを余儀なくされていることです(これは、私自身の好みでは非常に厄介です)。
また、コードは非静的メソッドの代わりに静的メソッドを使用することで非常に高速になり、さらにクリーンになりました。
また、5.2では通常どおり__callStaticメソッドを記述してから、メソッドを明示的に呼び出すことを考えました。たとえばregistry::__callStatic("some_func"), array("val", "val2", "val3")
、5.3にアップグレードすると、移行がさらに簡単になります。この方法についての考えは?
ありがとう!