Apakah Anda melihat kesalahan ini “Tidak aman untuk mengandalkan pengaturan zona waktu sistem ” (Kesalahan setelan zona waktu PHP) saat menjalankan skrip PHP? Saya baru-baru ini mendapatkan kesalahan ini setelah memperbarui PHP pada mesin CentOS. Di bawah ini adalah kesalahan lengkap saat mysqli_connect gagal terhubung ke database.
Warning: mysqli_connect(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /var/www/html/mysqli_connect.php on line 7
Inilah solusi untuk kesalahan di atas.
Cara Memperbaiki kesalahan pengaturan zona waktu PHP
Mulai dari PHP versi 5.3, Anda perlu menyetel zona waktu dalam skrip PHP menggunakan date_default_timezone_set()
fungsi sebelum memanggil date()
fungsi atau atur secara global di php.ini
berkas.
Untuk mengatur zona waktu yang diinginkan di php.ini
, ikuti langkah-langkah di bawah ini.
Langkah 1: Edit php.ini
# vim /etc/php.iniCatatan:
Lokasi PHP.ini mungkin berbeda di mesin Anda.
Jika Anda tidak memiliki izin untuk mengedit php.ini , maka Anda dapat membuatnya di root dokumen seperti yang dijelaskan dalam tutorial ini.
Langkah 2: Cari [Date]
bagian
Langkah 3: Atur zona waktu yang Anda inginkan di date.timezone
atribut seperti yang ditunjukkan di bawah ini:
date.timezone = 'Asia/Kolkata'Catatan:
Anda mungkin ingin mengatur zona waktu yang berbeda. Berikut daftar zona waktu yang didukung di PHP.
Langkah 4: Simpan file dan keluar
Langkah 5: Muat ulang server web. Jika Anda menggunakan server web Apache, maka di bawah ini adalah perintahnya.
# /etc/init.d/httpd reload
(atau)
Anda dapat mengatur zona waktu menggunakan fungsi di bawah ini:
date_default_timezone_set('Asia/Kolkata');
Fungsi di atas akan mengembalikan FALSE untuk zona waktu yang tidak valid. date_default_timezone_set()
harus digunakan sebelum memanggil date()
berfungsi di aplikasi Anda.
Pelajari lebih lanjut tentang dokumentasi resmi fungsi date_default_timezone_set PHP.