PHPPemula 11 menit
Fungsi (Function)
Membuat blok kode reusable dengan function.
Mengapa Pakai Fungsi?
- Reusability — tulis sekali, panggil berkali-kali.
- Readability — kode lebih rapi.
- Maintenance — perbaiki di satu tempat.
Fungsi Sederhana
<?php function sapa() { echo "Halo!"; } sapa(); // panggil ?>
Fungsi dengan Parameter
<?php function sapa($nama) { echo "Halo, $nama!"; } sapa("Budi"); // Halo, Budi! ?>
Fungsi dengan Return
<?php function jumlah($a, $b) { return $a + $b; } $hasil = jumlah(5, 3); echo $hasil; // 8 ?>
Default Parameter
<?php function sapa($nama = "Tamu") { echo "Halo, $nama!"; } sapa(); // Halo, Tamu! sapa("Andi"); // Halo, Andi! ?>
Type Hint (PHP Modern)
<?php function tambah(int $a, int $b): int { return $a + $b; } echo tambah(5, 7); // 12 ?>
Scope
Variabel di dalam fungsi tidak terlihat di luar:
<?php $x = 10; function tes() { // echo $x; ❌ error global $x; // akses variabel global echo $x; } ?>
Anonymous Function & Arrow
<?php $kuadrat = function($x) { return $x * $x; }; echo $kuadrat(4); // 16 // Arrow function (PHP 7.4+) $kubik = fn($x) => $x ** 3; echo $kubik(3); // 27 ?>
Coba kode ini
Buka di Playground <?php
function hitungBMI(float $berat, float $tinggi): array {
$tinggiM = $tinggi / 100;
$bmi = $berat / ($tinggiM * $tinggiM);
if ($bmi < 18.5) $kategori = "Kurus";
elseif ($bmi < 25) $kategori = "Normal";
elseif ($bmi < 30) $kategori = "Berlebih";
else $kategori = "Obesitas";
return ["bmi" => round($bmi, 2), "kategori" => $kategori];
}
$hasil = hitungBMI(70, 175);
echo "BMI: {$hasil['bmi']}\n";
echo "Kategori: {$hasil['kategori']}";
?>