در حال بارگزاری ...

قابلیت محلی سازی (Localization) در لاراول

توسط الهه قنبری
آخرین به روز رسانی سه شنبه 30 مهر 1398

در این مقاله کوتاه از لیداوب، درباره قابلیت محلی سازی (Localization) در لاراول بحث خواهیم کرد. با ما همراه باشید. همانطور که می‌دانید، فریم ورک لاراول دارای قابلیت‌های مهم و کارآمد زیادی

در این مقاله کوتاه از لیداوب، درباره قابلیت محلی سازی (Localization) در لاراول بحث خواهیم کرد. با ما همراه باشید.


همانطور که می‌دانید، فریم ورک لاراول دارای قابلیت‌های مهم و کارآمد زیادی می‌باشد که یکی از آن‌ها، قابلیت‌ Localization است که یکی از بهترین ویژگی‌های‌ این فریم ورک به شمار می‌رود.

محلی سازی (Localization) در لاراول

ویژگی Localization در لاراول، امکانی ساده و کاربردی برای دریافت رشته‌های مورد نیاز در زبان‌های مختلف فراهم می‌کند. تمام رشته‌های زبان در یک فایل جداگانه و در دایرکتوری “resource/lang” قرار می‌گیرند. لاراول چندین فایل‌ ترجمه پیش‌فرض را در درون این پوشه قرار داده است.

1. /resource
2. /lang
3. /en
4. auth.php
5. pagination.php
6. passwords.php
7. validation.php

پیکربندی محلی سازی (Localization) در لاراول

شما می‌توانید پیکربندی Localization را در فایل “config/app.php” مدیریت کنید. در این فایل، ویژگی “locale” و “fallback_locale” موجود است و شما می‌توانید براساس زبان برنامه پیش‌فرض خود آن را تغییر دهید. همچنین، می‌توانید از متد معینی برای تغییر زبان فعال در زمان اجرا استفاده کنید.

1. Route::get('welcome/{locale}', function ($locale) {
2. App::setLocale($locale);
3. 
4. });

می‌توان برای به دست آوردن زبان پیش‌فرض جاری از متد مشخص شده استفاده کرده و براساس آن زبان، شروط معینی را اعمال کنید.

1. // Get current app locale
2. 
3. $locale = App::getLocale();
4. 
5. // if statement to check the locale
6. 
7. if (App::isLocale('fr')) {
8. //
9. }

رشته های ترجمه

زمانی که نیاز به اضافه کردن یک زبان جدید داشته باشیم، کافی است یک پوشه جدید با کد کوتاه lang ایجاد کنیم، برای مثال، اگر بخواهیم زبان فرانسوی را اضافه کنیم، در این صورت باید یک پوشه با نام کد کوتاه “fr” و یک نام فایل “messages.php” در این پوشه ایجاد کنیم که برای ذخیره کلمات ترجمه شده به زبان فرانسوی مورد استفاده قرار خواهد گرفت. مانند پوشه “en” برای زبان پیش‌فرض که فایل “messages.php” در این پوشه برای آن ایجاد شده است.

/resource
1. /lang
2. /en
3. messages.php
4. /fr
5. messages.php

تمام فایل‌های زبان، یک آرایه برمی‌گردانند. به عنوان مثال:

1. <?php
2. 
3. // messages.php in "en" directory
4. return [
5. 'welcome' => 'Welcome to our application'
6. ];
7. 
8. // messages.php in "fr" directory
9. return [
10. 'welcome' => 'Bienvenue dans notre application'
11. ];

بازیابی رشته های ترجمه شده

برای بازیابی رشته‌های ترجمه شده، می‌توانید از تابع کمکی underscores __() در لاراول استفاده کنید. متد underscores __() فابل و کلید رشته را دریاقت می‌کند. به عنوان مثال، در فابل خود، رشته welcome را ایجاد می‌کنیم و سپس همان رشته welcome را بازیابی می‌کنیم.

echo __('messages.welcome');

در بالای دستورالعمل print، رشته welcome قرار می‌گیرد که همانطور که گفته شد زبان فعلی برنامه است. در قالب blade خود می‌توانید از عبارت معین استفاده کنید.

1. {{ __('messages.welcome') }}
2. 
3. // Use @lang directive
4. 
5. @lang('messages.welcome')

مطالعه مقالات بیشتر در لیداوب:

امیدوارم این مقاله کوتاه از لیداوب نیز برای شما مفید و کاربردی باشد. با سایر مقالات کاربردی ما در زمینه فریم ورک لاراول همراه ما باشید.

 

دیدگاه ها

دیدگاه ها : 0


متاسفانه فقط اعضای سایت قادر به ثبت دیدگاه هستند

رایگان

اشتراک گذاری در
ثبت امتیاز
5 (1 رای)

   لطفا صبر کنید ...