Tutorial PHP: Mengatasi Fatal error: Maximum execution time of 30 seconds exceeded di XAMPP

Ketika merancang atau menjalankan kode program PHP, ada kalanya sebuah program butuh waktu proses yang tidak sebentar, dan beberapa saat kemudian tampil pesan Fatal error: Maximum execution time of 30 seconds exceeded. Pada tutorial PHP kali ini saya akan mencoba mencari solusi untuk mengatasi masalah ini.


Cara Mengubah pengaturan max_execution_time PHP

Pesan Fatal error: Maximum execution time of 30 seconds exceeded berasal dari sebuah setingan PHP: max_execution_time = 30. Pengaturan ini bertujuan untuk memaksa kode PHP agar berhenti bekerja apabila dalam waktu 30 detik belum juga selesai di proses. Tujuannya, supaya sumber daya sistem (seperti processor) tidak bekerja terus-menerus.

Secara umum, sebuah kode PHP hanya membutuhkan waktu beberapa detik untuk menjalankan kode program. Apabila lebih, ditakutkan terdapat kode yang salah, seperti infinity loop (kode perulangan yang tidak pernah berhenti).

Dalam kasus tertentu, proses yang lama ini memang tidak bisa dihindari. Salah satu penyebabnya ketika kita mendownload atau mengupload file yang cukup besar.

Sebagai contoh, ketika saya mengistall wordpress secara offline, dan ingin mengupdate wordpress atau menginstall plugin, kita harus menunggu proses download ini. Jika koneksi internet yang anda gunakan cukup lambat, pesan Fatal error: Maximum execution time of 30 seconds exceeded hampir pasti akan muncul, dan proses update gagal.

Pesan kesalahan Fatal error - Maximum execution time of 30 seconds exceeded di wordpress


Jadi, bagaimana cara mengatasi error ini?

Caranya adalah dengan menambah batasan waktu dari pengaturan: max_execution_time.

Seluruh settingan PHP berada di dalam file yang bernama PHP.ini. Jika anda menggunakan XAMPP, file ini bisa ditemukan di folder_xampp/php/php.ini.

Lokasi File PHP.ini XAMPP

File PHP.ini juga bisa diakses dari jendela XAMPP Control Panel, seperti tampilan berikut:

Membuka file PHP.ini dari XAMPP Control Panel

Setelah file PHP.ini terbuka (biasanya dari aplikasi notepad bawaan windows). Cari baris "max_execution_time", mudahnya bisa menggunakan fitur 'find'. Setelah ketemu, ubah angka disebelah kanan max_execution_time.

Ubah Setingan max_execution_time PHP

Secara default, angka max_execution_time di set sebesar 30, yang berarti kode PHP diberi kesempatan maksimum paling lama 30 detik. Silahkan mengubah nilai ini menjadi angka yang lebih besar. Kali ini saya akan mengubahnya menjadi 300, yang berarti kode PHP diberi kesempatan selama 300 detik (5 menit) untuk menyelesaikan tugasnya. Anda juga bisa memberikan angka 0, yang berarti tidak ada batasan waktu.

Setelah itu, save file PHP.ini (bisa dengan menekan kombinasi tombol CRTL+S), kemudian restart Apache (dari XAMPP Control Panel, klik tombol Stop di Apache, kemudian klik kembali tombol Start).

Sekarang, seharusnya pesan Fatal error: Maximum execution time of 30 seconds exceeded sudah tidak keluar lagi. Namun perlu dicatat bahwa mungkin saja web browser 'hang' selagi menunggu kode PHP selesai memproses kode yang cukup lama ini.

30 Comments

  1. AGUS DWI SANTOSO
    12 Dec 15
  2. Albaab Muhammad
    21 Mar 17
  3. RF
    31 May 17
  4. rockemon
    03 Mar 18
  5. Asep E Roni
    04 Mar 18
    • Andre
      05 Mar 18
  6. Rizki Puji
    19 Sep 18
  7. pignatelli
    25 Oct 18
  8. asepolin
    20 Nov 18
  9. Hafiz Elfia Wedo Putra
    25 Dec 18
  10. Andaru Triadi
    10 Jan 19
    • Andre
      10 Jan 19
  11. Agus
    08 Apr 19
    • Andre
      09 Apr 19
  12. ismail akbar
    01 Jun 19
    • Andre
      07 Jun 19
  13. Anonymous
    18 Aug 19
    • Andre
      19 Aug 19
  14. Anonymous
    16 Oct 19
    • Andre
      17 Oct 19
      • Gunung
        14 Nov 19
  15. satria
    02 Mar 20
    • Andre
      03 Mar 20
  16. sam
    20 Apr 20
  17. Anonymous
    10 Jun 20
    • Andre
      11 Jun 20
  18. Duha
    21 Jul 21
  19. Jude
    12 Apr 22

Add Comment