Saturday, June 14, 2025

Cara Mengatasi Fatal Error: Call to Undefined Function di PHP

 


Error "Fatal error: Call to undefined function" di PHP terjadi ketika kamu mencoba memanggil sebuah fungsi yang tidak dikenal oleh interpreter PHP, alias belum didefinisikan atau tidak tersedia saat eksekusi.

Berikut beberapa penyebab umum dan cara mengatasinya:

 1. Typo (Kesalahan Penulisan Nama Fungsi)

Penyebab: Kamu mungkin salah menuliskan nama fungsi (huruf besar/kecil penting di PHP).

Solusi:
Periksa kembali nama fungsi. Contoh:

// Salah (case-sensitive)
echo Strlen("teks");

// Benar
echo strlen("teks");

 2. Fungsi Belum Didefinisikan

Penyebab: Kamu memanggil fungsi kustom (buatan sendiri), tapi belum membuatnya atau lupa meng-include file-nya.

Solusi:

  • Pastikan kamu sudah mendefinisikan fungsinya.
  • Jika fungsi berada di file lain, gunakan include, require, include_once, atau require_once.
Contoh:
// file: functions.php
function halo() {
  echo "Halo Dunia!";
}

// file: index.php
include 'functions.php'; // wajib sebelum memanggil fungsi
halo();

 3. Fungsi Butuh Ekstensi yang Belum Diaktifkan

Penyebab: Fungsi berasal dari ekstensi PHP tertentu (seperti mysqli_connect() atau imagecreate()), tapi ekstensinya belum aktif.

Solusi:

  • Aktifkan ekstensi di php.ini
  • Restart web server (Apache/Nginx)
Contoh:
  • Untuk mysqli_connect(), aktifkan extension=mysqli
  • Untuk imagecreate(), aktifkan extension=gd
Cek dengan:
php -m | grep mysqli

 4. Versi PHP Tidak Mendukung Fungsi Tersebut

Penyebab: Kamu menggunakan fungsi yang hanya tersedia di versi PHP tertentu.

Solusi:

  • Cek versi PHP:
php -v
  • Cek dokumentasi PHP https://www.php.net/ untuk melihat sejak versi berapa fungsi tersedia.
  • Jika perlu, upgrade PHP.

 5. Composer Autoload Belum Disertakan

Jika kamu menggunakan Composer dan memanggil fungsi dari library, pastikan kamu sudah menyertakan autoload.

require_once __DIR__ . '/vendor/autoload.php';

 Contoh Error dan Solusi

<?php
echo hello_world();

 Error: Fatal error: Uncaught Error: Call to undefined function hello_world()

Solusi: Tambahkan fungsi:

function hello_world() {
    return "Hello World!";
}
Posted in 

0 comments:

Post a Comment