Laravel - Pelan Pemasyarakatan: Panduan Untuk Pemula
Hai, para pengembang yang sedang belajar! Hari ini, kita akan memulai perjalanan yang menarik ke dunia pelan pemasyarakatan Laravel. Jangan khawatir jika Anda baru saja memulai dalam pemrograman - saya akan menjadi panduan ramah Anda, menjelaskan segala sesuatu secara langkah demi langkah. Pada akhir panduan ini, Anda akan dapat membuat aplikasi Laravel Anda berbicara dalam banyak bahasa! Mari kita mulai!
Apa Itu Pelan Pemasyarakatan?
Sebelum kita masuk ke kode, mari kita memahami apa arti pelan pemasyarakatan. Bayangkan Anda menciptakan website yang fantastis, tetapi semua pengguna Anda tidak berbicara dalam bahasa yang sama. Apakah bagus kalau situs Anda dapat secara otomatis berubah bahasa berdasarkan preferensi pengguna? Itu tepatnya apa yang pelan pemasyarakatan lakukan!
Pelan pemasyarakatan adalah proses penyesuaian aplikasi Anda ke dalam bahasa dan wilayah yang berbeda. Itu seperti mengajarkan aplikasi Anda menjadi multilingual!
Mengapa Pelan Pemasyarakatan Penting?
Biarkan saya share cerita singkat. Beberapa tahun yang lalu, salah satu murid saya menciptakan situs e-commerce yang menakjubkan. Itu sempurna... kecuali hanya dalam Bahasa Inggris. Ketika dia mencoba untuk mengembangkan ke pasar yang berbicara Spanyol, dia menyadari dia harus membangun hampir semua hal lagi! Jika dia telah menggunakan pelan pemasyarakatan dari awal, itu akan jauh lebih mudah.
Pelan pemasyarakatan membantu Anda:
- Mencapai audiens global
- Menyempurnakan pengalaman pengguna
- Menambahkan keterlibatan dan retensi pengguna
Sekarang, mari kita lihat bagaimana Laravel membuat proses ini mudah!
Menyiapkan Pelan Pemasyarakatan di Laravel
Langkah 1: Membuat Berkas Bahasa
Pertama, kita perlu membuat berkas bahasa. Laravel membuat ini sangat mudah!
- Pergi ke direktori
resources/lang
dalam proyek Laravel Anda. - Buat folder baru untuk setiap bahasa yang Anda ingin dukung. Misalnya,
en
untuk Bahasa Inggris,es
untuk Spanyol. - Dalam setiap folder, buat berkas PHP yang dinamai sesuai fitur yang Anda ingin terjemahkan. Mari kita mulai dengan
messages.php
.
Inilah struktur direktori Anda mungkin terlihat seperti ini:
resources/
lang/
en/
messages.php
es/
messages.php
Sekarang, mari kita menambahkan beberapa terjemahan ke dalam berkas-berkas ini:
// resources/lang/en/messages.php
return [
'welcome' => 'Selamat datang di situs web kami!',
'goodbye' => 'Goodbye, see you soon!',
];
// resources/lang/es/messages.php
return [
'welcome' => '¡Bienvenido a nuestro sitio web!',
'goodbye' => '¡Adiós, hasta pronto!',
];
Langkah 2: Menggunakan Terjemahan di Kode Anda
Sekarang kita memiliki terjemahan, mari kita gunakan mereka di kode kita. Laravel menyediakan beberapa cara untuk melakukan ini:
Metode 1: Menggunakan Fungsi Bantu __()
echo __('messages.welcome');
Ini akan mengeluarkan "Selamat datang di situs web kami!" jika aplikasi diatur ke Bahasa Inggris, atau "¡Bienvenido a nuestro sitio web!" jika diatur ke Spanyol.
Metode 2: Menggunakan Fungsi Bantu trans()
echo trans('messages.goodbye');
Ini melakukan hal yang sama seperti __()
tetapi beberapa pengembang lebih suka sintaks ini.
Metode 3: Menggunakan Direktif @lang
di Template Blade
Dalam template Blade Anda, Anda dapat menggunakan direktif @lang
:
<h1>@lang('messages.welcome')</h1>
Ini sangat berguna ketika Anda bekerja dengan template HTML.
Langkah 3: Mengubah Locale Aplikasi
Sekarang, bagaimana kita mengatakan ke Laravel tentang bahasa mana yang harus digunakan? Ada beberapa cara:
Metode 1: Mengatur Locale Default
Dalam berkas config/app.php
, Anda dapat mengatur locale default:
'locale' => 'id',
Metode 2: Mengubah Locale di Waktu Eksekusi
Anda dapat mengubah locale secara dinamis dalam kode Anda:
App::setLocale('id');
Ini berguna ketika Anda ingin mengubah bahasa berdasarkan preferensi pengguna atau pengaturan.
Metode 3: Menggunakan Middleware untuk Locale
Untuk kontrol yang lebih lanjut, Anda dapat membuat middleware untuk mengatur locale berdasarkan berbagai faktor. Ini adalah contoh sederhana:
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\App;
class SetLocale
{
public function handle($request, Closure $next)
{
if ($request->session()->has('locale')) {
App::setLocale($request->session()->get('locale'));
}
return $next($request);
}
}
Lalu, daftarkan middleware ini di app/Http/Kernel.php
:
protected $middlewareGroups = [
'web' => [
// ... middleware lainnya
\App\Http\Middleware\SetLocale::class,
],
];
Teknik Pelan Pemasyarakatan Lanjut
Pluralisasi
Laravel dapat menangani pluralisasi untuk Anda! Ini adalah cara:
// Dalam berkas bahasa Anda
'apples' => '{0} No apples|{1} One apple|[2,*] :count apples',
// Dalam kode Anda
echo trans_choice('apples', 0); // Mengeluarkan: No apples
echo trans_choice('apples', 1); // Mengeluarkan: One apple
echo trans_choice('apples', 5); // Mengeluarkan: 5 apples
Pelan Pemasyarakatan dengan Parameter
Anda juga dapat menggunakan parameter dalam terjemahan Anda:
// Dalam berkas bahasa Anda
'welcome_name' => 'Selamat datang, :name!',
// Dalam kode Anda
echo __('messages.welcome_name', ['name' => 'John']); // Mengeluarkan: Selamat datang, John!
Kesimpulan
Selamat! Anda baru saja mengambil langkah pertama ke dunia pelan pemasyarakatan Laravel. Dengan alat ini, Anda sekarang dapat membuat aplikasi Anda berbicara dalam banyak bahasa!
Ingat, kunci untuk menguasai pelan pemasyarakatan (dan pemrograman umum) adalah praktik. Cobalah menciptakan proyek kecil dan implementasikan pelan pemasyarakatan dari awal. Anda akan terkejut betapa cepat itu menjadi kebiasaan!
Semangat coding, dan moga aplikasi Anda dapat berbicara dalam banyak bahasa! ??️?
Metode | Deskripsi | Contoh |
---|---|---|
__() |
Fungsi bantu untuk terjemahan | __('messages.welcome') |
trans() |
Fungsi bantu lainnya untuk terjemahan | trans('messages.goodbye') |
@lang |
Direktif Blade untuk terjemahan | @lang('messages.welcome') |
App::setLocale() |
Mengatur locale aplikasi | App::setLocale('id') |
trans_choice() |
Terjemahan dengan pluralisasi | trans_choice('apples', 5) |
Credits: Image by storyset