Membuat Fungsi Global/Helper pada Laravel
LaravelTerkadang kita memerlukan fungsi yang dapat diakses darimana pun. Contoh saat kita ingin merubah jenis kelamin "L" menjadi "Laki-laki".
Biasanya kita menggunakan lokal fungsi, dan selalu melakukan perulangan penulisan ditempat berbeda dalam projek yang sama. PHP modern sebenarnya sudah mendukung global function dengan sangat baik. Di composer (PHP) ada fasilitas yang disebut "autoload" untuk mengambil fungsi dimanapun kita berada.
Baik, berikut langkah-langkah simpel untuk membuat helper di Laravel.
1. Buat folder dengan nama Helpers di dalam folder app.
2. Buat file php dalam folder Helpers dan tuliskan function yang ingin dibuat secara global. Contoh:
function convertGender($gender)
{
if ($gender) {
if ($gender == 'M') {
return 'Laki-laki';
} elseif ($gender == 'F') {
return 'Perempuan';
}
}
return '-';
}
3. Edit composer.json dengan menambahkan "files" dan isikan alamat file helper kita.
"autoload": {
...
"files": [
"app/Helpers/your_helper_function.php"
]
...
}
4. Selanjutkan jalan kan printah di terminal/command promt untuk meregenerate composer autoload.
composer dump-autoload
Selesai... untuk memanggil fungsi kita, hanya perlu menuliskan nama function diikuti parameter (jika ada), misal pada file blade kita bisa menuliskan seperti ini:
{{ convertGender($user->gender) ?? '' }}
Semoga bermanfaat