Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Membuat Laluan Berbilang Bahasa dalam Laravel?

Bagaimana untuk Membuat Laluan Berbilang Bahasa dalam Laravel?

DDD
Lepaskan: 2024-11-03 21:22:29
asal
236 orang telah melayarinya

How to Create Multilingual Routes in Laravel?

Cara Membuat Laluan Terjemahan Berbilang Bahasa dalam Laravel

Pengenalan

Laluan penterjemahan adalah penting untuk mencipta aplikasi berbilang bahasa. Dalam Laravel, ada kemungkinan untuk mempunyai berbilang bahasa dan menukar bahasa secara dinamik berdasarkan URL. Artikel ini menerangkan cara untuk melaksanakan laluan terjemahan berbilang bahasa dalam Laravel menggunakan kaedah pertama yang digariskan dalam artikel rujukan.

Langkah 1: Terjemah Laluan

Buat tiga fail route.php dalam direktori app/lang untuk setiap bahasa (cth., pl/routes.php, en/routes.php dan fr/routes.php). Di dalam setiap fail, terjemah nama laluan:

  • Poland:
<code class="php"><?php
// app/lang/pl/routes.php

return array(

    'contact' => 'kontakt',
    'about' => 'o-nas'
);</code>
Salin selepas log masuk
  • Bahasa Inggeris:
<code class="php"><?php
// app/lang/en/routes.php

return array(
    'contact' => 'contact',
    'about' => 'about-us'
);</code>
Salin selepas log masuk
  • Bahasa Perancis:
<code class="php"><?php
// app/lang/fr/routes.php

return array(
    'contact' => 'contact-fr',
    'about' => 'about-fr'
);</code>
Salin selepas log masuk

Langkah 2: Konfigurasikan Tetapan Bahasa

Kemas kini fail app/config/app.php:

  • Tetapkan bahasa utama:
<code class="php">'locale' => 'pl',</code>
Salin selepas log masuk
  • Senaraikan bahasa alternatif:
<code class="php">'alt_langs' => array('en', 'fr'),</code>
Salin selepas log masuk
  • Tentukan awalan setempat:
<code class="php">'locale_prefix' => '',</code>
Salin selepas log masuk

Langkah 3: Tentukan Corak Laluan

Dalam apl/ routes.php, sediakan corak laluan berdasarkan terjemahan bahasa:

<code class="php"><?php
// app/routes.php

foreach(Lang::get('routes') as $k => $v) {
    Route::pattern($k, $v);
}</code>
Salin selepas log masuk

Langkah 4: Kumpulan Laluan mengikut Tempatan

Buat kumpulan laluan dengan awalan yang sama ke tempat yang dipilih:

<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>
Salin selepas log masuk

Langkah 5: Tangani Ubah Hala

Dalam app/start/global.php, buat ubah hala 301 untuk URL yang tidak diketahui ke yang betul bahasa:

<code class="php"><?php
// app/start/global.php

App::missing(function() {
   return Redirect::to(Config::get('app.locale_prefix'), 301);
});</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Membuat Laluan Berbilang Bahasa dalam Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan