簡介
翻譯路由對於建立多語言應用程式至關重要。在 Laravel 中,可以有多種語言並根據 URL 動態切換語言。本文介紹如何使用參考文章中概述的第一種方法在 Laravel 中實作多語言翻譯路由。
第1 步:翻譯路由
建立三個routes.php 檔案在每種語言的app/lang 目錄中(例如pl/routes.php、en /routes.php 和fr/routes.php)。在每個文件中,翻譯路線名稱:
<code class="php"><?php // app/lang/pl/routes.php return array( 'contact' => 'kontakt', 'about' => 'o-nas' );</code>
<code class="php"><?php // app/lang/en/routes.php return array( 'contact' => 'contact', 'about' => 'about-us' );</code>
<code class="php"><?php // app/lang/fr/routes.php return array( 'contact' => 'contact-fr', 'about' => 'about-fr' );</code>
第2 步:設定語言設定
第2 步:設定語言設定
<code class="php">'locale' => 'pl',</code>
<code class="php">'alt_langs' => array('en', 'fr'),</code>
<code class="php">'locale_prefix' => '',</code>列出替代語言:
列出替代語言:
<code class="php"><?php // app/routes.php foreach(Lang::get('routes') as $k => $v) { Route::pattern($k, $v); }</code>
列出替代語言:
列出替代語言:
<code class="php"><?php Route::group(array('prefix' => Config::get('app.locale_prefix')), function() { Route::get( '/', function () { return "main page - " . App::getLocale(); } ); Route::get( '/{contact}/', function () { return "contact page " . App::getLocale(); } ); Route::get( '/{about}/', function () { return "about page " . App::getLocale(); } ); });</code>
定義語言環境前綴:
<code class="php"><?php // app/start/global.php App::missing(function() { return Redirect::to(Config::get('app.locale_prefix'), 301); });</code>第3 步:定義路由模式在第3 步:定義路由模式在在app/ 中routes.php,根據語言翻譯設定路由模式:第4 步:按區域設定對路由建立一個前綴等於的路由群組到選定的語言環境:第5 步:處理重定向在app/start/global.php 中,為未知URL 建立301 重新導向到正確的位置語言:
以上是如何在 Laravel 中建立多語言路由?的詳細內容。更多資訊請關注PHP中文網其他相關文章!