Materi Function Lengkap di Pemrograman PHP

paket belajar web programming di kursus komputer ymii cileungsi

📘 Materi Function Lengkap di PHP

1. Pengertian Function

Function (fungsi) adalah sekumpulan kode yang dibungkus dalam satu nama, dan dapat dipanggil berulang kali.
Tujuan penggunaan function:

  • Menghindari duplikasi kode.
  • Membuat program lebih rapi dan mudah dibaca.
  • Memudahkan perawatan dan pengembangan.

2. Cara Membuat Function

Bentuk dasar:

function namaFungsi() {

    // kode yang dijalankan

}

Contoh:

<?php

function salam() {

    echo “Halo, Selamat Datang di PHP!”;

}

salam(); // memanggil function

?>


3. Function dengan Parameter

Parameter digunakan untuk mengirim data ke dalam function.

<?php

function sapa($nama) {

    echo “Halo, $nama! Selamat belajar PHP.<br>”;

}

sapa(“Budi”);

sapa(“Siti”);

?>

Output:

Halo, Budi! Selamat belajar PHP.

Halo, Siti! Selamat belajar PHP.


4. Function dengan Return Value

return digunakan agar function menghasilkan nilai.

<?php

function tambah($a, $b) {

    return $a + $b;

}

$hasil = tambah(5, 7);

echo “Hasil penjumlahan: $hasil”;

?>

Output:

Hasil penjumlahan: 12


5. Default Parameter

Kita bisa memberi nilai default pada parameter.

<?php

function sapa($nama = “Pengunjung”) {

    echo “Halo, $nama!<br>”;

}

sapa(“Andi”);

sapa(); // akan pakai default

?>

Output:

Halo, Andi!

Halo, Pengunjung!


6. Function dengan Multiple Parameter

Function bisa punya lebih dari satu parameter.

<?php

function hitungLuasPersegiPanjang($panjang, $lebar) {

    return $panjang * $lebar;

}

echo “Luas: ” . hitungLuasPersegiPanjang(5, 10);

?>


7. Variable Scope

  • Local: hanya bisa diakses di dalam function.
  • Global: bisa diakses dari luar function dengan global.
  • Static: menyimpan nilai terakhir meskipun function selesai dipanggil.

<?php

$nama = “Ani”; // global

function tampilNama() {

    global $nama; // akses variabel global

    echo “Nama: $nama<br>”;

}

function counter() {

    static $count = 0;

    $count++;

    echo “Counter: $count<br>”;

}

tampilNama();

counter();

counter();

counter();

?>

Output:

Nama: Ani

Counter: 1

Counter: 2

Counter: 3


8. Anonymous Function (Closure)

Function tanpa nama, disimpan dalam variabel.

<?php

$halo = function($nama) {

    return “Halo $nama!”;

};

echo $halo(“Budi”);

?>


9. Arrow Function (PHP 7.4+)

Penulisan singkat function.

<?php

$tambah = fn($a, $b) => $a + $b;

echo $tambah(10, 5); // 15

?>


10. Recursive Function

Function yang memanggil dirinya sendiri.

<?php

function faktorial($n) {

    if ($n == 1) return 1;

    return $n * faktorial($n – 1);

}

echo “5! = ” . faktorial(5);

?>

Output:

5! = 120


11. Built-in Functions di PHP

PHP menyediakan banyak function bawaan, misalnya:

  • strlen(“teks”) → panjang string.
  • strtoupper(“abc”) → huruf besar.
  • date(“Y-m-d”) → tanggal.
  • rand(1, 10) → angka random.
  • count($array) → jumlah elemen array.

12. Studi Kasus: Program Kasir Sederhana

<?php

function hitungTotal($harga, $jumlah) {

    return $harga * $jumlah;

}

function formatRupiah($angka) {

    return “Rp ” . number_format($angka, 0, ‘,’, ‘.’);

}

$produk = [

    [“Apel”, 10000, 5],

    [“Jeruk”, 12000, 3],

    [“Mangga”, 15000, 2]

];

$totalBayar = 0;

foreach ($produk as $p) {

    $subTotal = hitungTotal($p[1], $p[2]);

    echo $p[0] . ” – ” . formatRupiah($p[1]) . ” x ” . $p[2] . ” = ” . formatRupiah($subTotal) . “<br>”;

    $totalBayar += $subTotal;

}

echo “<b>Total Bayar: ” . formatRupiah($totalBayar) . “</b>”;

?>

Output:

Apel – Rp 10.000 x 5 = Rp 50.000

Jeruk – Rp 12.000 x 3 = Rp 36.000

Mangga – Rp 15.000 x 2 = Rp 30.000

Total Bayar: Rp 116.000


13. Best Practices Function di PHP

  • Gunakan nama yang jelas (misal hitungLuasLingkaran() bukan hitung() saja).
  • Jika function panjang, bagi jadi function kecil.
  • Gunakan return untuk mengembalikan nilai, jangan hanya echo.
  • Gunakan type hinting (PHP 7+):

function tambah(int $a, int $b): int {

    return $a + $b;

}


👉 Jadi, function di PHP itu sangat penting, mulai dari yang sederhana (sapa()) sampai yang lebih kompleks (kasir, perhitungan, format data).


📘 Modul Latihan Function di PHP


✦ Pertemuan: Function Dasar

📖 Materi Singkat

  • Function digunakan untuk mengelompokkan kode agar lebih rapi.
  • Ada 2 cara: function tanpa parameter & function dengan parameter.
  • Function bisa return nilai.

📝 Latihan Soal

Soal 1.
Buat sebuah function bernama salam() yang menampilkan teks:

Halo, Selamat Datang di Pemrograman PHP!

Soal 2.
Buat function hitungKelilingPersegi($sisi) yang menghitung keliling persegi (rumus: 4 * sisi).

Soal 3.
Buat function hitungDiskon($harga, $diskon) yang menerima harga barang dan persentase diskon, lalu mengembalikan harga setelah diskon.

Soal 4.
Buat function cekGenap($angka) yang menampilkan apakah angka tersebut “Genap” atau “Ganjil”.

Soal 5.
Buat function luasSegitiga($alas, $tinggi) yang mengembalikan luas segitiga (rumus: (alas * tinggi) / 2).


✅ Kunci Jawaban

Jawaban 1

<?php

function salam() {

    echo “Halo, Selamat Datang di Pemrograman PHP!”;

}

salam();

?>

Jawaban 2

<?php

function hitungKelilingPersegi($sisi) {

    return 4 * $sisi;

}

echo “Keliling persegi = ” . hitungKelilingPersegi(5);

?>

Jawaban 3

<?php

function hitungDiskon($harga, $diskon) {

    $potongan = $harga * ($diskon / 100);

    return $harga – $potongan;

}

echo “Harga setelah diskon = ” . hitungDiskon(100000, 20);

?>

Jawaban 4

<?php

function cekGenap($angka) {

    if ($angka % 2 == 0) {

        echo “$angka adalah Genap”;

    } else {

        echo “$angka adalah Ganjil”;

    }

}

cekGenap(7);

?>

Jawaban 5

<?php

function luasSegitiga($alas, $tinggi) {

    return ($alas * $tinggi) / 2;

}

echo “Luas segitiga = ” . luasSegitiga(10, 5);

?>


✦ Pertemuan: Function Lanjutan

📖 Materi Singkat

  • Function bisa punya default parameter.
  • Function bisa berbentuk anonymous function (closure).
  • Bisa dibuat recursive function (function memanggil dirinya sendiri).

📝 Latihan Soal

Soal 6.
Buat function sapa($nama = “Pengunjung”) yang menampilkan:

Halo, [nama]!

Jika tidak ada nama yang dimasukkan, tampilkan “Halo, Pengunjung!”.

Soal 7.
Buat anonymous function untuk menghitung luas lingkaran dengan jari-jari 7.

Soal 8.
Buat recursive function faktorial($n) untuk menghitung nilai faktorial.

Soal 9.
Buat function formatRupiah($angka) yang mengembalikan angka dalam format rupiah (contoh: 10000 → Rp 10.000).

Soal 10. (Studi Kasus)
Buat program daftar produk dengan function:

  • hitungTotal($harga, $qty)
  • formatRupiah($angka)

Produk:

  • Apel, harga 5000, jumlah 3
  • Jeruk, harga 7000, jumlah 2

Tampilkan dalam format:

Apel – Rp 5.000 x 3 = Rp 15.000

Jeruk – Rp 7.000 x 2 = Rp 14.000

Total Bayar = Rp 29.000


✅ Kunci Jawaban

Jawaban 6

<?php

function sapa($nama = “Pengunjung”) {

    echo “Halo, $nama!”;

}

sapa(“Budi”);

sapa();

?>

Jawaban 7

<?php

$luasLingkaran = function($r) {

    return 3.14 * $r * $r;

};

echo “Luas lingkaran = ” . $luasLingkaran(7);

?>

Jawaban 8

<?php

function faktorial($n) {

    if ($n == 1) return 1;

    return $n * faktorial($n – 1);

}

echo “5! = ” . faktorial(5);

?>

Jawaban 9

<?php

function formatRupiah($angka) {

    return “Rp ” . number_format($angka, 0, ‘,’, ‘.’);

}

echo formatRupiah(10000);

?>

Jawaban 10

<?php

function hitungTotal($harga, $qty) {

    return $harga * $qty;

}

function formatRupiah($angka) {

    return “Rp ” . number_format($angka, 0, ‘,’, ‘.’);

}

$produk = [

    [“Apel”, 5000, 3],

    [“Jeruk”, 7000, 2]

];

$total = 0;

foreach ($produk as $p) {

    $subTotal = hitungTotal($p[1], $p[2]);

    echo $p[0] . ” – ” . formatRupiah($p[1]) . ” x ” . $p[2] . ” = ” . formatRupiah($subTotal) . “<br>”;

    $total += $subTotal;

}

echo “<b>Total Bayar = ” . formatRupiah($total) . “</b>”;

?>

Leave a Reply

Your email address will not be published. Required fields are marked *