ブートストラップ ファイルで URL パラメーターを取得しようとしていますが、何度か試行しても取得できません。
私はこれを試しましたが、うまくいきません:
protected function _initGetLang() {
$frontController = Zend_Controller_Front::getInstance();
$lang= $frontController->getParam('lang');
}
これは正しい方法ですか?
ありがとう。
ブートストラップ ファイルで URL パラメーターを取得しようとしていますが、何度か試行しても取得できません。
私はこれを試しましたが、うまくいきません:
protected function _initGetLang() {
$frontController = Zend_Controller_Front::getInstance();
$lang= $frontController->getParam('lang');
}
これは正しい方法ですか?
ありがとう。
ディスパッチ/ルーティング プロセスがまだ完了していないため、ブートストラップからリクエスト パラメータにアクセスすることはできません。Controller Pluginを使用すると、URL に基づいてアクションを実行することが最も効果的だと思います。または、絶対にブートストラップで実行する必要がある場合、getRequestUri()
または$_GET
利用可能な場合、または URL を自分で解析する簡単なスクリプトを作成できます。
編集:
プラグインがどのように機能するかを理解する前に、過去に次のようなばかげたことをしました。
/**
* Grab the module name without a request instance
*
* @return string The module name
*/
public static function getModuleName()
{
$uri = ltrim($_SERVER["REQUEST_URI"], "/");
$module = substr($uri, 0, strpos($uri, "/"));
return $module;
}
これにより、少なくともswitch
ブートストラップで使用できるモジュール名が得られます。ただし、プラグインを正しく実行すれば、必要なことは何でもできるはずです。