Menghilangkan "Warning Message: Module already loaded" pada CodeIgniter
Ketika mengembangkan sebuah aplikasi menggunakan CodeIgniter pada localhost, peringatan error atau warning tidak akan muncul jika kita telah menulis kode dengan benar.
Namun biasanya ketika kita upload pada hosting muncul sebuah pesan warning seperti ini:
A PHP Error was encountered
Severity: Core Warning
Message: Module 'pdo_mysql' already loaded
Filename: Unknown
Line Number: 0
Backtrace:
Pesan di atas menginformasikan bahwa kita mencoba me-load/memuat sebuah modul yang sudah termuat sebelumnya atau ada modul yang belum tersedia namun coba dimuat.
Atau bisa juga muncul karena terdapat perbedaan modul pada localhost dan hosting. Alhasil, muncullah peringatan warning tersebut.
Munculnya pesan tersebut tidak berarti aplikasi kita error, akan tetapi membuat aplikasi kita rentan terhadap celah keamanan dan terlihat tidak profesional.
Untuk menyembunyikan peringatan tersebut, kita harus mengubah “environment” aplikasi yang sedang kita kembangkan. Berikut tata caranya:
- Silakan edit file
index.php
. - Kemudian cari kode ini:
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
- Lalu ganti
development
denganproduction
menjadi seperti ini:
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'production');
- Simpan dan refresh halaman web.
Dengan cara di atas maka pesan warning module already loaded akan hilang.
Development environment CodeIgniter ada tiga, yaitu: development
, testing
, dan production
. Berikut penjelasan singkatnya:
development
merupakan konfigurasi default environment CodeIgniter dalam tahap pengembangan. Pada tahap ini apabila terjadi error atau warning akan tampil pada browser.testing
merupakan konfigurasi pada tahap pengujian aplikasi. Error atau warning pada tahap ini tidak akan tampil.production
merupakan konfigurasi pada aplikasi yang siap untuk digunakan oleh end user. Pada tahap produksi error atau warning tidak akan tampil.
Semoga bermanfaat.