← Kembali ke artikel
Teknologi • 22 Oct 2026 • 3 dilihat

Perulangan PHP Lengkap dengan Contoh Kode untuk Pemula

Pelajari perulangan PHP mulai dari for, while, do-while, hingga foreach. Panduan ini berisi sintaks, contoh kode, hasil keluaran, dan kesalahan yang sering terjadi.

Oleh Candra

Bagikan artikel ini

Perulangan PHP Lengkap dengan Contoh Kode untuk Pemula

Dengan perulangan, kode menjadi lebih singkat, rapi, dan mudah dipelihara. Blok kode akan terus berjalan selama kondisi tertentu terpenuhi.

PHP menyediakan empat jenis perulangan, yaitu for, while, do-while, dan foreach. Setiap jenis punya sintaks dan kegunaan masing-masing, dan semuanya dijelaskan satu per satu di bawah ini.

Perulangan for untuk Jumlah Putaran Pasti

Perulangan for dipakai saat programmer sudah tahu berapa kali kode harus berjalan. Sintaksnya terdiri dari tiga bagian di dalam kurung yang dipisahkan titik koma.

php

for (inisialisasi; kondisi; increment/decrement) {
    // kode yang diulang
}

Inisialisasi menentukan nilai awal variabel penghitung dan hanya berjalan sekali di awal. Kondisi dicek sebelum setiap putaran. Jika bernilai true, perulangan lanjut, dan jika false, perulangan berhenti. Increment atau decrement mengubah nilai penghitung setelah setiap putaran selesai.

Contoh pertama menampilkan angka 1 sampai 5.

php

<?php
for ($i = 1; $i <= 5; $i++) {
    echo "Angka ke-" . $i . "\n";
}
?>

Hasilnya adalah lima baris, dari “Angka ke-1” sampai “Angka ke-5”.

Contoh kedua menghitung mundur dari 10 sampai 1. Programmer cukup mengganti increment menjadi decrement dan membalik kondisinya.

php

<?php
for ($i = 10; $i >= 1; $i--) {
    echo $i . " ";
}
?>
// Hasil: 10 9 8 7 6 5 4 3 2 1

Contoh ketiga menjumlahkan angka 1 sampai 10 dengan variabel penampung bernama $total.

php

<?php
$total = 0;
for ($i = 1; $i <= 10; $i++) {
    $total = $total + $i;
}
echo "Total: " . $total;
?>
// Hasil: Total: 55

Perulangan while dan do-while untuk Kondisi Tertentu

Perulangan while cocok saat jumlah putaran belum pasti, tetapi syarat berhentinya sudah jelas. Kondisi dicek di awal. Jika bernilai false sejak awal, kode di dalamnya tidak berjalan sama sekali.

php

<?php
$nilai = 1;
while ($nilai <= 100) {
    echo $nilai . " ";
    $nilai = $nilai * 2;
}
?>
// Hasil: 1 2 4 8 16 32 64

Programmer wajib mengubah variabel yang dicek dalam kondisi, seperti $i++ atau $nilai * 2 pada contoh di atas. Jika lupa, kondisi akan selalu true dan perulangan tidak pernah berhenti. Kondisi ini disebut infinite loop.

Perulangan do-while mirip dengan while, tetapi kondisinya dicek di akhir. Akibatnya, blok kode pasti berjalan minimal satu kali walaupun kondisinya false sejak awal. Jangan lupa tanda titik koma setelah kondisi while.

php

<?php
$x = 10;
 // Dengan while, tidak ada yang tampil
while ($x < 5) {
    echo "while dijalankan\n";
}
 // Dengan do-while, teks tampil satu kali
do {
    echo "do-while dijalankan\n";
} while ($x < 5);
?>
// Hasil: do-while dijalankan

Kondisi $x < 5 bernilai false sejak awal. While tidak menjalankan apa pun, sedangkan do-while tetap menjalankan isinya satu kali.

Perulangan foreach untuk Membaca Array

Perulangan foreach dirancang khusus untuk membaca isi array dan objek. Programmer tidak perlu mengatur variabel penghitung atau mengetahui jumlah elemen. PHP menelusuri setiap elemen secara otomatis.

php

// Array biasa
foreach ($array as $nilai) {
    // kode yang diulang
}
 // Array asosiatif (dengan kunci)
foreach ($array as $kunci => $nilai) {
    // kode yang diulang
}

Contoh pertama membaca array biasa berisi nama buah.

php

<?php
$buah = ["Apel", "Jeruk", "Mangga", "Pisang"];
 foreach ($buah as $b) {
    echo $b . "\n";
}
?>

Contoh kedua membaca array asosiatif. Variabel $nama menampung kunci, sedangkan $nilai menampung isinya.

php

<?php
$siswa = [
    "Budi" => 85,
    "Siti" => 90,
    "Andi" => 78
];
 foreach ($siswa as $nama => $nilai) {
    echo $nama . " mendapat nilai " . $nilai . "\n";
}
?>
// Hasil:
// Budi mendapat nilai 85
// Siti mendapat nilai 90
// Andi mendapat nilai 78

Contoh ketiga menghitung rata-rata nilai. Fungsi count() menghitung jumlah elemen array.

php

<?php
$nilai = [80, 90, 70, 85, 75];
$total = 0;
 foreach ($nilai as $n) {
    $total += $n;
}
 $rata = $total / count($nilai);
echo "Rata-rata: " . $rata;
?>
// Hasil: Rata-rata: 80

Break, Continue, dan Perulangan Bersarang

Perintah break menghentikan perulangan sepenuhnya. Pada contoh berikut, perulangan berhenti saat $i bernilai 6.

php

<?php
for ($i = 1; $i <= 10; $i++) {
    if ($i == 6) {
        break;
    }
    echo $i . " ";
}
?>
// Hasil: 1 2 3 4 5

Perintah continue melewati putaran saat ini dan langsung lanjut ke putaran berikutnya. Contoh di bawah melewati angka genap, sehingga hanya angka ganjil yang tampil.

php

<?php
for ($i = 1; $i <= 10; $i++) {
    if ($i % 2 == 0) {
        continue;
    }
    echo $i . " ";
}
?>
// Hasil: 1 3 5 7 9

Perulangan bersarang atau nested loop adalah perulangan di dalam perulangan lain. Programmer biasa memakainya untuk membuat tabel, pola bintang, atau mengolah data dua dimensi. Untuk setiap satu putaran perulangan luar, perulangan dalam berjalan sampai selesai.

php

<?php
for ($baris = 1; $baris <= 5; $baris++) {
    for ($kolom = 1; $kolom <= $baris; $kolom++) {
        echo "*";
    }
    echo "\n";
}
?>

Kode di atas menghasilkan pola segitiga bintang dengan lima baris. Baris pertama berisi satu bintang, dan baris kelima berisi lima bintang.

Contoh berikutnya membuat tabel perkalian 1 sampai 3.

php

<?php
for ($i = 1; $i <= 3; $i++) {
    for ($j = 1; $j <= 3; $j++) {
        echo $i * $j . "\t";
    }
    echo "\n";
}
?>
// Hasil:
// 1   2   3
// 2   4   6
// 3   6   9

Perulangan PHP dalam HTML

Dalam pengembangan web, perulangan sering menghasilkan elemen HTML secara dinamis. Programmer tidak perlu menulis tag yang sama berulang-ulang. Cukup satu blok kode, dan PHP membuat semua elemennya.

Contoh pertama membuat daftar dropdown tahun dari 2020 sampai 2026.

php


<?php
for ($tahun = 2020; $tahun <= 2026; $tahun++) {
    echo "$tahun";
}
?>

Contoh kedua menampilkan data produk dalam tabel. Setiap elemen array menjadi satu baris tabel.

php

<?php $produk = [ ["Laptop", 8000000], ["Mouse", 150000], ["Keyboard", 350000] ]; foreach ($produk as $p) { echo ""; echo "" . $p[0] . ""; echo "" . $p[1] . ""; echo ""; } ?>

Memilih Jenis Perulangan dan Menghindari Kesalahan

Setiap jenis perulangan punya situasi yang paling pas. Pilihan yang tepat membuat kode lebih mudah dibaca dan lebih aman dijalankan.

JenisKapan dipakaiContoh kasus
forJumlah putaran sudah diketahuiMengulang 10 kali, menelusuri indeks 0 sampai n
whileJumlah putaran tidak pasti dan bergantung pada kondisiMembaca data sampai habis
do-whileKode harus berjalan minimal satu kaliMenampilkan menu lalu meminta pengguna memilih
foreachBekerja dengan array atau koleksi dataMenampilkan daftar produk

Ada empat kesalahan yang sering muncul saat memakai perulangan.

  • Infinite loop. Variabel kondisi lupa diubah atau kondisinya salah, sehingga perulangan tidak pernah berhenti dan server bisa hang.
  • Kesalahan satu angka (off-by-one). Programmer salah memilih antara < dan <=. Array dengan 5 elemen punya indeks 0 sampai 4, jadi kondisinya harus $i < 5, bukan $i <= 5.
  • Mengubah array saat di-foreach. Memodifikasi array yang sedang ditelusuri bisa menghasilkan perilaku yang tidak terduga.
  • Nested loop yang terlalu dalam. Semakin banyak tingkat, program semakin lambat dan sulit dibaca. Batasi sampai dua atau tiga tingkat.

Periksa kondisi dan batas indeks sebelum menjalankan perulangan PHP di server produksi.