php,

PHP Dasar: Perulangan Pada PHP

Ham Ham Follow May 04, 2020 · 9 mins read
PHP Dasar: Perulangan Pada PHP
Share this

Pada artikel Logika Percabangan yang sudah kita bahas sebelumnya, kita sudah belajar tentang Struktur kontrol yang sangat memudahkan developer untuk mengeksekusi sebagian fungsi tertentu.

Kali ini kita akan membahas jenis lain dari struktur kontrol, yaitu perulangan dalam PHP.

Fungsi Perulangan

Pada tutorial Variabel dan Tipe Data Pada PHP yang pernah kita bahas sebelumnya, ada beberapa contoh menggunakan array dan menampilkannya dengan menggunakan indeks.

Tapi itu hanya sedikit data yang ada di dalam arrary, bagaimana jika datanya ratusan? Bagaimana kita menampilkannya? Apakah kita harus menulis echo sebanyak jumlah data di dalam array itu?

Tidak perlu, kita hanya perlu menggunakan fungsi perulangan untuk menampilkannya.

Misalnya kita ingin menampilkan kalimat Belajar PHP sebanyak 100 kali, kita tidak perlu menulis dengan echo sebanyak 100 kali. Cukup dengan satu blok kode perulangan, kita bisa menampilkannya berulang kali.

Metode Perulangan Pada PHP

Ada beberapa metode perulangan pada PHP. Mari kita bahas satu persatu

Perulangan For

Metode ini merupakan metode yang paling sederhana. Sebagai contoh, kita akan menampilkan kalimat Belajar PHP sebanyak 100 kali, maka baris kodenya seperti berikut ini.

<?php

for ($i = 0; $i < 100; $i++) {
    echo "Belajar PHP<br>";
}

?>

Perulangan For membutuhkan 3 ekspresi, yaitu ...for ($i = 0; $i < 100; $i++) ..., masing-masing dipisahkan dengan titik koma (;).

Ekspresi pertama berfungsi untuk menginisialisasi variabel. Ekspresi kedua berfungsi sebagai Boolean statement, dimana perulangan akan terus dilakukan jika statement ini bernilai true.

Sedangkan ekspresi ketiga berfungsi sebagai aksi yang akan selalu dijalankan saat satu perulangan selesai dilakukan.

Contoh lain perulangan for sebagai berikut

<?php

# inisialisasi variabel tidak harus dari angka 0
for ($i = 1; $i <= 10; $i++) {
    echo "Perulangan ke-{$i} <br>";
}
?>

Kita juga bisa membuat kelipatan lebih dari 1

<?php

for ($i = 2; $i < 100; $i += 2) {
    echo "Nilai i = {$i} <br>";
}
?>

Membuat hitung mundur

<?php

for ($i = 10; $i > 0; $i--) {
    echo "Nilai i = {$i} <br>";
}
?>

Atau membuat perulangan didalam perulangan


<?php

# kode program ini akan menampilkan * dalam bentuk persegi
# dengan ukuran 5x5
for ($i = 0; $i < 5; $i++) {
    for ($j = 0; $j < 5; $j++) {
        echo "* ";
    }

    echo "<br>";
}
?>

Menampilkan Array Dengan For

Kita juga bisa menampilkan array menggunakan for dengan ekspresi kedua menggunakan count(array).

Berikut ini contohnya

<?php

$prog = ['PHP', 'HTML', 'CSS'];

for ($i = 0; $i < count($prog); $i++) {
    echo "Pemrograman: {$prog[$i]} <br>";
}
?>

Break dan Continue

continue berfungsi untuk melakukan skip satu step proses perulangan. Sedangkan break berfungsi untuk mengakhiri proses perulangan.

Contohnya sebagai berikut

<?php

# inisialisasi variabel tidak harus dari angka 0
for ($i = 1; $i <= 50; $i++) {
    if ($i % 10 === 0) {
      continue; # skip perulangan jika nilai $i habis dibagi 10
    }
    
    echo "Perulangan ke-{$i} <br>";

    if ($i > 40) {
      break; # hentikan perulangan jika $i lebih dari 40
    }
}
?>

Perulangan While

Sama dengan for, hanya saja while digunakan untuk perulangan pada kondisi dimana kita tidak mengetahui secara pasti berapa jumlah perulangan yang harus dilakukan.

Berikut contohnya

<?php

$i = 0;

# perulangan ini akan dilakukan selama nilai $i kurang dari 20.
while ($i < 20) {
    echo "Perulangan ke-{$i} <br>";

    $i++;
}
?>

While hanya menerima satu ekspresi saja, yaitu ekspresi Boolean. Perintah perulangan akan terus dilakukan saat Boolean bernilai true.

Perulangan Tanpa Batas dengan While

Dengan while kita bisa melakukan perulangan tanpa batas, ekspresi boolean yang kita tulis selalu bernilai true. Entah nilai true secara langsung, atau nilai true yang tidak langsung misalkan melalui ekspresi 1 > 0 (satu lebih dari nol).

Misalnya sebagai berikut

<?php

while (true) {
    echo "Jangan lakukan ini, atau PC anda akan macet!! <br>";
}
?>

Break dan Continue dengan While

Sama seperti pada for, kita juga bisa melakukan skip dan memberhentikan proses perulangan dengan `while.

Berikut ini contohnya

<?php

# kita mulai dari angka 1
$i = 1;

# perulangan akan dilakukan selama variabel $i bukan kelipatan 3
while ($i % 3 !== 0) {
    if ($i % 5 === 0) {
      # skip ke perulangan selanjutnya jika $i adalah kelipatan 5
      # jangan lupa di-random dulu agar tidak terjadi perulangan tanpa batas
      $i = rand(1, 500);
      continue; 
    }

    echo "Nilai i = {$i} <br>";

    if ($i > 50 && $i < 60) {
        break; # jika $i bernilai lebih dari 50 dan kurang dari 60 maka stop paksa
    }

    # ubah nilai $i secara random dari angka 1-500
    $i = rand(1, 500);
}
?>

Perulangan Do While

Sama seperti while, perulangan do .. while juga mengevaluasi ekspresi Boolean, dimana perulangan akan terus diproses jika Boolean bernilai true.

Perbedaannya, pada perulangan while, ekspresi Booleadn akan diproses terlebih dahulu sebelum memulai perulangan, sedangkan do..while kebalikannya.

Saat menggunakan while dan nilai Boolean bernilai false maka perulangan tidak akan dijalankan, sementara di do..while perulangan akan tetap dilakukan meskipun kondisi pertama bernilai false.

Brikut ini contohnya

<?php

while (false) {
    echo "Perulangan ke-1 dengan while! <br>";
}

do {
    echo "Perulangan ke-1 dengan do while! <br>";
} while (false);
?>

Perulangan Foreach

Perulangan foreach` khusus untuk tipe data array, baik array asosiatif maupun array terindeks.

Kita bisa melakukan perulangan pada elemen array tanpa harus tahu berapa panjang array tersebut.

Untuk penulisannya, ada dua versi, yaitu versi singkat dan versi lengkap. Kita bisa menggunakan salah satunya.

Sintaks Singkat

Untuk penulisan versi singkatnya sebagai berikut

<?php

$program = ['PHP', 'HTML', 'CSS'];

foreach ($program as $prog) {
    echo "Pemrograman : {$prog} <br>";
}
?>

Perulangan foreach (versi singkat) hanya menerima 2 variabel yang dipisahkan kata kunci as. Variabel pertama adalah variabel dengan tipe data array, sedangkan yang kedua adalah item dari array tersebut.

Penulisan versi singkat memiliki beberapa kelebihan, yaitu penulisan yang lebih singkat daripada perulangan lain. Dan item array per-indeks sudak disimpan dalam satu variabel, jadi tidak perlu memanggil indeksnya lagi.

Sintaks Lengkap

Pada versi lengkap, ada penambahan tanda => dan variabel $key, nama variabel ini bebas dan bisa kita ganti.

Sebagai contohnya

<?php

$listprogram = ['PHP', 'HTML', 'CSS'];

foreach ($listprogram as $key => $program) {
    echo "[{$key}] Nama : {$program} <br>";
}
?>

Dalam variabel $key diatas berisi nilai indeks dari iterasi yang sedang dilakukan. Kita bisa menggunakan nama lain untuk variabel $key.

Perulangan Rekursif

Berbeda dengan lainnya, perulangan rekursif memiliki cara kerja yang bebeda.

Perulangan rekursif tidak pernah berhenti dan selalu memanggil dirinya sendiri.

Ilustrasinya, kita meletakkan dua cermin yang saling berhadapan. Dan yang dihasilkan adalah bayangan yang saling bgerpantulan tanpa akhir.

Khusus perulangan rekursif ini akan kita bahas pada materi selanjutnya ya.

Penutup

Itulah funsgi perulangan pada PHP. Untuk artikel pembelajaran PHP lainnya silahkan cek di Kategori PHP ya guys.

Artikel ini dikutip dari jagongoding.com dengan judul PHP Dasar: Perulangan

php
Dapatkan Update
Dapatkan update artikel dengan mudah, cukup masukkan emailmu aja!
Ham
Ham Follow
Hi, saya Ham, semoga artikel yang saya bagikan bermanfaat