Menu
CoddyTech

Fungsi Variabel

Termasuk bagian Logika dan Alur dalam perjalanan PHP di Coddy. Pelajaran 6 dari 68.

Fungsi variabel menawarkan cara lain untuk memanggil fungsi secara dinamis di PHP. Alih-alih menggunakan call_user_func(), kamu dapat langsung memanggil fungsi dengan memperlakukan variabel yang berisi nama fungsi seolah-olah variabel itu adalah fungsi itu sendiri.

Sintaksnya sederhana: jika kamu memiliki variabel yang berisi nama fungsi, kamu dapat memanggil fungsi itu dengan menambahkan tanda kurung ke variabel tersebut:

<?php
function sayHello() {
    echo "Hello World!";
}

$functionName = "sayHello";
$functionName();  // Output: Hello World!
?>

Ini juga berlaku untuk fungsi yang menerima parameter. Kamu cukup meneruskan argumen di dalam tanda kurung:

<?php
function greet($name) {
    echo "Hello, " . $name . "!";
}

$func = "greet";
$func("Alice");  // Output: Hello, Alice!
?>

Fungsi variabel menyediakan cara yang rapi dan intuitif untuk menjalankan kode secara dinamis. Fitur ini sangat berguna saat kamu perlu memanggil fungsi yang berbeda berdasarkan kondisi atau input pengguna, sehingga kodemu lebih fleksibel dan mudah beradaptasi.

challenge icon

Tantangan

Mudah

Buat tiga fungsi: calculateArea yang menerima dua angka (panjang dan lebar) lalu mengembalikan hasil perkaliannya, calculatePerimeter yang menerima dua angka lalu mengembalikan dua kali jumlah keduanya, dan calculateDiagonal yang menerima dua angka lalu mengembalikan akar kuadrat dari jumlah kuadrat keduanya.

Kamu akan menerima tiga input: nama operasi ("area", "perimeter", atau "diagonal"), panjang, dan lebar. Baca ketiga input, simpan nama fungsi dalam variabel, panggil fungsi tersebut menggunakan sintaks fungsi variabel dengan kedua ukuran, lalu cetak hasilnya.

Format input: Tiga baris. Baris pertama berisi nama operasi, baris kedua berisi panjang (angka yang dapat memiliki angka desimal), baris ketiga berisi lebar (angka yang dapat memiliki angka desimal)

Output yang diharapkan: Hasil perhitungan

Coba sendiri

<?php
// Baca input
$operation = trim(fgets(STDIN));
$length = floatval(fgets(STDIN));
$width = floatval(fgets(STDIN));

// TODO: Buat tiga fungsi di sini (calculateArea, calculatePerimeter, calculateDiagonal)

// TODO: Panggil fungsi yang sesuai menggunakan sintaks fungsi variabel dan simpan hasilnya

// Tampilkan hasilnya
echo $result;
?>
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler PHP online