Mengenal Loop do While di PHP : Cara Kerja dan Penerapan

Tutorial133 Views

Dalam dunia pemrograman, terutama di PHP, perulangan adalah elemen penting yang membantu developer mengeksekusi blok kode berulang kali tanpa harus menuliskannya secara manual. Salah satu jenis perulangan yang kerap digunakan adalah loop do while. Struktur ini memiliki karakter unik dibandingkan jenis loop lain karena menjamin minimal satu kali eksekusi sebelum kondisi diperiksa. Mari kita kupas lebih dalam bagaimana cara kerja loop do while, sintaksis, serta contoh penerapannya dalam berbagai kasus.

Apa Itu Loop do While

Sebelum memahami lebih jauh, penting untuk mengingat bahwa loop do while berbeda dengan while biasa. Jika pada while kondisi diperiksa terlebih dahulu sebelum kode dieksekusi, maka do while melakukan kebalikannya. Blok kode langsung dijalankan sekali, kemudian baru dilakukan pengecekan kondisi untuk menentukan apakah perulangan dilanjutkan atau berhenti.

Pendekatan ini sangat berguna dalam skenario di mana sebuah instruksi harus dijalankan setidaknya sekali, terlepas dari apakah kondisi sudah benar atau tidak.

Sintaksis Loop do While di PHP

Secara umum, penulisan loop do while di PHP mengikuti pola sederhana. Sintaksnya adalah sebagai berikut:

<?php
do {
    // blok kode yang akan dieksekusi
} while (kondisi);
?>

Blok kode yang ada di dalam tanda kurung kurawal akan dieksekusi terlebih dahulu. Setelah itu, interpreter PHP akan mengevaluasi ekspresi kondisi. Jika kondisi bernilai benar, perulangan akan berlanjut. Namun jika kondisi bernilai salah, perulangan berhenti.

Perbedaan Loop do While dengan While

Meski terlihat mirip, ada perbedaan mendasar antara kedua jenis perulangan ini. Perbedaan paling jelas terletak pada urutan evaluasi kondisi. Pada loop while, kondisi dicek lebih dulu. Jika salah, kode di dalam loop tidak dijalankan sama sekali. Sedangkan pada loop do while, kode dijalankan sekali baru kemudian kondisi diperiksa.

Contoh berikut akan memperlihatkan perbedaan tersebut:

<?php
$x = 10;

while ($x < 5) {
    echo "Ini adalah loop while\n";
}

do {
    echo "Ini adalah loop do while\n";
} while ($x < 5);
?>

Kode di atas akan menghasilkan output “Ini adalah loop do while” sekali saja, sedangkan loop while tidak menampilkan apa pun. Inilah bukti nyata perbedaan keduanya.

Contoh Penerapan Sederhana

Salah satu penggunaan dasar loop do while adalah untuk menampilkan angka berurutan. Berikut contohnya:

<?php
$angka = 1;

do {
    echo "Angka: $angka <br>";
    $angka++;
} while ($angka <= 5);
?>

Output dari kode tersebut adalah:

Angka: 1
Angka: 2
Angka: 3
Angka: 4
Angka: 5

Blok kode tetap berjalan mulai dari angka 1 hingga 5. Meski kondisi akan dicek setelah eksekusi, hasil akhirnya tetap sesuai harapan.

Penerapan pada Validasi Input

Loop do while sering dimanfaatkan untuk kasus validasi input. Misalnya, ketika sebuah aplikasi meminta pengguna memasukkan angka tertentu dan harus dijalankan setidaknya sekali agar pengguna diberi kesempatan input.

<?php
do {
    $input = readline("Masukkan angka lebih besar dari 10: ");
} while ($input <= 10);

echo "Terima kasih, angka yang Anda masukkan adalah $input";
?>

Program di atas akan terus meminta input pengguna hingga syarat angka lebih besar dari 10 terpenuhi. Namun instruksi meminta input tetap berjalan minimal sekali meski pengguna sudah memasukkan angka valid sejak awal.

Penggunaan Loop do While untuk Menu Interaktif

Dalam aplikasi berbasis CLI, loop do while dapat digunakan untuk membuat menu interaktif yang berulang sampai pengguna memilih opsi keluar. Berikut implementasinya:

<?php
do {
    echo "=== Menu Utama ===\n";
    echo "1. Lihat Data\n";
    echo "2. Tambah Data\n";
    echo "3. Keluar\n";
    $pilihan = readline("Pilih menu: ");

    switch ($pilihan) {
        case 1:
            echo "Menampilkan data...\n";
            break;
        case 2:
            echo "Menambahkan data...\n";
            break;
        case 3:
            echo "Keluar dari program.\n";
            break;
        default:
            echo "Pilihan tidak valid.\n";
    }
} while ($pilihan != 3);
?>

Dengan pendekatan ini, pengguna bisa memilih menu berkali kali tanpa program langsung berhenti. Perulangan hanya berakhir jika opsi keluar dipilih.

Kapan Harus Menggunakan Loop do While

Loop do while paling tepat dipakai ketika program harus mengeksekusi instruksi minimal sekali, terutama pada interaksi dengan pengguna. Misalnya saat membuat program untuk login, validasi form, atau tampilan menu. Kondisi ini berbeda dengan loop while atau for yang cenderung digunakan untuk perulangan dengan kondisi ketat sejak awal.

Hal yang Perlu Diperhatikan

Meski berguna, penggunaan loop do while harus dilakukan dengan hati hati. Jika kondisi tidak dikelola dengan benar, bisa terjadi infinite loop yang membuat program berjalan tanpa henti. Selalu pastikan ada mekanisme untuk memperbarui variabel yang berhubungan dengan kondisi perulangan agar program tidak terjebak.

Selain itu, dalam konteks aplikasi modern, developer sering menggabungkan loop ini dengan struktur logika lain seperti if atau switch agar hasilnya lebih dinamis. Kombinasi ini membuat program lebih interaktif dan mampu merespons berbagai skenario input.

Studi Kasus Penggunaan Loop do While

Mari lihat contoh pada sistem login sederhana di mana pengguna diminta memasukkan username dan password. Program akan terus meminta input sampai data benar dimasukkan.

<?php
$validUser = "admin";
$validPass = "12345";

do {
    $user = readline("Masukkan username: ");
    $pass = readline("Masukkan password: ");
    if ($user === $validUser && $pass === $validPass) {
        echo "Login berhasil!\n";
        $status = true;
    } else {
        echo "Username atau password salah, coba lagi.\n";
        $status = false;
    }
} while ($status == false);
?>

Kode tersebut memastikan pengguna minimal sekali diminta memasukkan data login, dan akan terus mengulang jika input salah. Implementasi ini memperlihatkan bagaimana loop do while dapat digunakan dalam alur nyata yang sering ditemui di aplikasi.