web-dev-qa-db-ja.com

countModulesの省略形を作るには?

$this->countModules('...')と入力するのに疲れました。その関数のエイリアスを作成する方法はありますか。JavaScriptでvar alias = myFunctionを実行したときのようなものはありますか?

$thisをグローバル変数に割り当てて、ラッパー関数を使用してuse $this->countModules as mを試してみましたが、どれも機能しません。

ありがとう!

2
Jinx

これを行う必要はありません。 @Bakualがすでに言ったように、あなたのアプローチは悪い習慣です。

手始めに、関数が不要な場合、関数内で関数を不必要にラップしています。次にJFactory::getDocument()->countModules(...)を返します。つまり、JFactoryクラスを呼び出し、次にJDocumentを呼び出します。これは、作成する前にすでに存在するかどうかを確認する必要があり、次にcountModules()関数。全体的にあなたはプロセスを遅くしています。

$this->countModules()に固執することで物事をシンプルに保つ

6
Lodder

さらにいじくり回した後、私はそれを理解しました:

//Shorthand for countModules function
function m($arguments) {
    return JFactory::getDocument()->countModules($arguments);
}
2
Jinx