Environment Variable di Laravel

Environment variable adalah sebuah variable yang dimana di deskripsikan di global variable yang berfungsi untuk mempermudah pemanggilan variable yang sifatnya di panggil berulang - ulang. Didalam framework laravel ketika kita selesai installasi environment variabel disimpan didalam satu file .env.example namun file ini hanya contoh saja supaya kita bisa menggunakannya kita bisa membuat file dengan nama file .env lalu copy isi dari .env.example kedalam file yang baru dibuat kurang lebih seperti ini.

File .env

APP_NAME=Laravel
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Secara default laravel hanya membuat beberapa environment variable yang sering digunakan untuk contoh misalkan untuk koneksi kedatabase, contoh seperti dibawah ini :

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

Di atas adalah beberapa baris koneksi ke database dengan default connectionnya ke MySQL, jika kita lihat memang hanya beberapa environment variable saja yang disediakan oleh framework laravel namun kita juga bisa membuat custom environment variable misalkan seperti ini.

URL_SERVER_SAP="http://sap.contoh.com/api"
USER_SAP="contohuser"
PASSWORD_SAP="contohpass"

Jika kita mau menambahkan Environment Variable baru diusakan kita simpan di file .env.example terlebih dahulu baru kita copy ke .env, Kenapa ? karena secara default file .env ini tidak bisa ikut naik ke repository keaplikasi kita, Maka dari itu supaya tersubmit / push di repo kita simpannya didalam file .env.example.

Lalu dimana sebetulnya fungsinya ??? Oke kita akan kasih kasus misalkan kita ingin memanggil Environment variable URL_SERVER_SAP, USER_SAP, PASSWORD_SAP misalkan di Controller maka kita cukup panggil environment variablenya dengan seperti ini.

<?php

$url = env('URL_SERVER_SAP');
$user_sap = env('USER_SAP');
$password_sap = env('PASSWORD_SAP');

Jika ada perubahan midalkan URL_SERVER_SAP, USER_SAP & PASSWORD_SAP maka kita tinggal melakukan perubahan nya di file .env saja misalkan alamat url untuk diproduction beda kita rubahnya di file .env saja, sehingga kita tidak perlu merubah di controllernya lagi.

Demikianlah artikel tentang Environment Variable, jika kalian mengalami kendala misalkan tidak terdeteksi atau tidak terload di Controller pas di echo hasilnya null. Saran saya lakukan config:cache dan config:clear biasanya ada dicache laravelnya, jalankan syntak dibawah ini:

Config Cache

php artisan config:cache

Config Clear

php artisan config:clear

Demikianlah artikelnya, semoga bermanfaat.

 

Related Articles

Comments