Anda di halaman 1dari 12

Struktur Kondisi Dan Struktur Perulangan Pada Bahasa Pemrograman PHP

kondisi pada PHP digunakan untuk menyeleksi suatu kondisi akan dijalankan atau tidak.
Contohnya dalam proses login di email, jika username dan password yang dimasukkan benar
maka kita dapat masuk melihat inbox email kita, tapi jika salah maka tidak akan bisa masuk.
Pengeleksian kondisi ini (apakah username benar atau salah) menggunakan STRUKTUR
KONDISI.Secara sederhana, struktur kontrol mengizinkan Anda untuk mengontrol aliran
eksekusi kode di aplikasi Anda. Secara umum, program dijalankan secara berurutan, baris demi
baris, dan struktur kontrol mengizinkan Anda untuk mengubah aliran itu, biasanya tergantung
pada kondisi tertentu.

Struktur kontrol adalah fitur inti dari bahasa PHP yang mengizinkan skrip Anda merespons
secara berbeda terhadap input atau situasi yang berbeda. Ini dapat mengizinkan skrip Anda
memberikan respons berbeda berdasarkan input pengguna, konten file, atau beberapa data
lainnya.

Flowchart berikut menjelaskan cara kerja struktur kontrol di PHP.

Seperti yang Anda lihat pada diagram di atas, pertama-tama suatu kondisi diperiksa. Jika
kondisinya benar, kode kondisional akan dieksekusi. Yang penting untuk dicatat di sini adalah
bahwa eksekusi kode berlanjut secara normal setelah eksekusi kode kondisional.
Mari kita perhatikan contoh berikut ini.

Pada contoh di atas, program memeriksa apakah pengguna login atau tidak. Berdasarkan status
login pengguna, mereka akan diarahkan ke halaman Login atau halaman My Account. Dalam
kasus ini, struktur kontrol mengakhiri eksekusi kode dengan mengarahkan pengguna ke halaman
lain. Ini adalah kemampuan penting dari bahasa PHP.

PHP mendukung sejumlah struktur kontrol yang berbeda:

 if
 else
 elseif
 switch
 while
 do - while
 for
 foreach
 dan banyak lagi
Mari kita lihat beberapa struktur kontrol ini dengan contoh.

Menuju Struktur Kontrol yang Berbeda

Pada bagian sebelumnya, kita mempelajari dasar-dasar struktur kontrol di PHP dan kegunaannya
dalam pengembangan aplikasi. Di bagian ini, kita akan membahas beberapa struktur kontrol
penting yang akan sering Anda gunakan dalam pengembangan aplikasi sehari-hari.

If

Susunan dari  If  mengizinkan Anda untuk mengeksekusi sepotong kode jika ekspresi yang
diberikan bersama dengan itu bernilai true.

Lihatlah contoh berikut untuk memahami cara kerjanya.

1<?php
2$age = 50;

4if ($age > 30)
5{
6  echo "Your age is greater than 30!";
7}
8?>
Contoh di atas akan menampilkan  usia Anda lebih dari 30!  pesan sejak ekspresi bernilai true.
Bahkan, jika Anda ingin menjalankan hanya satu pernyataan, contoh di atas dapat ditulis ulang
seperti yang ditunjukkan dalam cuplikan berikut tanpa tanda kurung.

1<?php
2$age = 50;

4if ($age > 30)
5  echo "Your age is greater than 30!";
6?>
Di sisi lain, jika Anda memiliki lebih dari satu pernyataan untuk mengeksekusi, Anda harus
menggunakan kurung, seperti yang ditunjukkan dalam potongan berikut.
1<?php
2if (is_array($user))
3{
4  $user_id = isset($user['user_id']) ? $user['user_id'] : '';
5  $username = isset($user['username']) ? $user['username'] : '';
6  // and more statements...
7}
8?>

Lain

Di bagian sebelumnya, kita membahas  if  construct yang mengizinkan Anda untuk


mengeksekusi sepotong kode jika ekspresi bernilai true. Di sisi lain, jika ekspresi bernilai false,
itu tidak akan melakukan apa-apa. Lebih sering daripada tidak, Anda juga ingin menjalankan
cuplikan kode yang berbeda jika ekspresi bernilai false. Di situlah pernyataan  else muncul.

Anda selalu menggunakan pernyataan  else  dalam hubungan dengan pernyataan  if  . Pada
dasarnya, Anda dapat mendefinisikannya seperti yang ditunjukkan pada pseudocode berikut.

1if (expression)
2{
3  // code is executed if the expression evaluates to TRUE
4}
5else
6{
7  // code is executed if the expression evaluates to FALSE
8}
Mari kita revisi contoh sebelumnya untuk memahami cara kerjanya.

01<?php
02$age = 50;
03 
04if ($age < 30)
05{
06  echo "Your age is less than 30!";
07}
08else
09{
10  echo "Your age is greater than or equal 30!";
11}
12?>
Jadi, ketika Anda memiliki dua pilihan, dan salah satunya harus dieksekusi, Anda dapat
menggunakan  if-else  construct.

Else If

Kita bisa menganggap pernyataan  elseif  sebagai perpanjangan dari  if-else  construct. Jika
Anda memiliki lebih dari dua pilihan untuk dipilih, Anda dapat menggunakan
pernyataan  elseif .

Mari kita pelajari struktur dasar pernyataan  elseif , seperti yang ditunjukkan pada pseudocode
berikut.

01if (expression1)
02{
03  // code is executed if the expression1 evaluates to TRUE
04}
05elseif (expression2)
06{
07  // code is executed if the expression2 evaluates to TRUE
08}
09elseif (expression3)
10{
11  // code is executed if the expression3 evaluates to TRUE
12}
13else
14{
15  // code is executed if the expression1, expression2 and expression3 evaluates to FALSE, a default choice
16}
Sekali lagi, mari kita coba memahaminya menggunakan contoh pada kasus.

01<?php
02$age = 50;
03 
04if ($age < 30)
05{
06  echo "Your age is less than 30!";
07}
08elseif ($age > 30 && $age < 40)
09{
10  echo "Your age is between 30 and 40!";
11}
12elseif ($age > 40 && $age < 50)
13{
14  echo "Your age is between 40 and 50!";
15}
16else
17{
18  echo "Your age is greater than 50!";
19}
20?>
Seperti yang dapat Anda lihat dalam contoh di atas, kita memiliki beberapa kondisi, jadi kita
telah menggunakan serangkaian pernyataan  elseif .  Jika  dalam semua kondisi yang bernilai
false, maka eksekusi pada kode yang disediakan di pernyataan  else  terakhir.

Switch

Pernyataan switch agak mirip dengan pernyataan  elseif  yang mana kita baru saja membahas di
bagian sebelumnya. Satu-satunya perbedaan adalah ekspresi yang sedang diperiksa.

Dalam hal pernyataan  elseif  Anda memiliki serangkaian kondisi yang berbeda, dan tindakan
yang sesuai akan dijalankan berdasarkan suatu kondisi. Di sisi lain, jika Anda ingin
membandingkan variabel dengan nilai yang berbeda, Anda dapat menggunakan
pernyataan  switch .

Seperti biasa, contoh adalah cara terbaik untuk memahami pernyataan  switch .

01<?php
02$favourite_site = 'Code';
03 
04switch ($favourite_site) {
05  case 'Business':
06    echo "My favourite site is business.tutsplus.com!";
07    break;
08  case 'Code':
09    echo "My favourite site is code.tutsplus.com!";
10    break;
11  case 'Web Design':
12    echo "My favourite site is webdesign.tutsplus.com!";
13    break;
14  case 'Music':
15    echo "My favourite site is music.tutsplus.com!";
16    break;
17  case 'Photography':
18    echo "My favourite site is photography.tutsplus.com!";
19    break;
20  default:
21    echo "I like everything at tutsplus.com!";
22}
23?>
Seperti yang Anda lihat pada contoh di atas, kita ingin memeriksa nilai
variabel  $favourite_site  dan berdasarkan pada nilai variabel  $favourite_site  kita ingin cetak
pesan.

Untuk setiap nilai yang ingin Anda periksa dengan variabel  $favourite_site , Anda harus
mendefinisikan  case  block. Jika nilainya dicocokkan dengan sebuah case, kode yang terkait
dengan case block tersebut akan dieksekusi. Setelah itu, Anda perlu menggunakan
pernyataan  break  untuk mengakhiri eksekusi kode. Jika Anda tidak menggunakan
pernyataan  break , eksekusi skrip akan dilanjutkan hingga blok terakhir di dalam pernyataan
switch.

Terakhir, jika Anda ingin mengeksekusi potongan kode yang jika nilai variabel tidak cocok
dengan kasus apa pun, Anda dapat mendefinisikannya di bawah  default  block. Tentu saja, itu
tidak wajib — itu hanya cara untuk menyediakan kasus default.

Jadi itulah kisah struktur kontrol bersyarat. Kita akan membahas loop di PHP di bagian
selanjutnya.

Loop

Loop di PHP berguna ketika Anda ingin mengeksekusi sepotong kode berulang kali hingga suatu
kondisi bernilai false. Jadi kode dieksekusi berulang kali selama kondisi bernilai true, dan segera
setelah kondisi bernilai false, skrip terus mengeksekusi kode setelah loop.
Flowchart berikut menjelaskan cara kerja loop di PHP.

Seperti yang Anda lihat pada screenshot di atas, sebuah loop berisi suatu kondisi. Jika kondisi
bernilai true, kode kondisional dijalankan. Setelah eksekusi kode kondisional, kontrol kembali ke
kondisi loop, dan ini berlanjut hingga kondisi bernilai false.

Di bagian ini, kita akan membahas berbagai jenis loop yang didukung di PHP.

While Loop

While  loop digunakan ketika Anda ingin mengeksekusi sepotong kode berulang kali sampai
kondisi  while  bernilai false.

Anda dapat mendefinisikannya seperti yang ditunjukkan pada pseudocode berikut.


1while (expression)
2{
3  // code to execute as long as expression evaluates to TRUE
4}
Mari kita lihat contoh kasus untuk memahami bagaimana  while  loop bekerja di PHP.

01<?php 
02$max = 0; 
03echo $i = 0;
04echo ",";
05echo $j = 1; 
06echo ",";
07$result=0;
08 
09while ($max < 10 ) 
10{ 
11    $result = $i + $j; 
12 
13    $i = $j; 
14    $j = $result; 
15 
16    $max = $max + 1; 
17    echo $result;
18    echo ",";
19}
20?>
Jika Anda terbiasa dengan seri Fibonacci, Anda mungkin mengenali apa yang dilakukan oleh
program di atas — ia mengeluarkan seri Fibonacci untuk sepuluh angka pertama.  While  loop
umumnya digunakan ketika Anda tidak tahu jumlah iterasi yang akan terjadi dalam satu loop.Do-
While Loop

Do-while  loop sangat mirip dengan  while  loop, dengan satu-satunya perbedaan adalah bahwa
kondisi while diperiksa pada akhir iterasi pertama. Dengan demikian, kita dapat menjamin
bahwa kode loop dijalankan setidaknya satu kali, terlepas dari hasil ekspresi while.

sintaks dari  do-while  loop.

1do
2{
3  // code to execute
4} while (expression);
Mari kita lalui ke contoh kasus untuk memahami kemungkinan penggunaan kasus di mana Anda
dapat menggunakan  do-while  loop.

01<?php
02$handle = fopen("file.txt", "r");
03if ($handle)
04{
05    do
06    {
07        $line = fgets($handle);
08 
09        // process the line content
10 
11    } while($line !== false);
12}
13fclose($handle);
14?>
Pada contoh di atas, kita mencoba membaca file baris demi baris. Pertama, kita telah membuka
file untuk dibaca. Dalam kasus kita, kita tidak yakin apakah file tersebut mengandung konten.
Jadi, kita perlu menjalankan fungsi  fgets  setidaknya sekali untuk memeriksa apakah suatu file
tersebut berisi konten. Jadi kita bisa menggunakan  do-while  loop disini.  do-
while  mengevaluasi kondisi setelah iterasi pertama loop.

For Loop

Secara umum,  for  loop digunakan untuk mengeksekusi sepotong kode untuk jumlah waktu
tertentu. Dengan kata lain, jika Anda sudah tahu berapa kali Anda ingin mengeksekusi blok
kode, itu adalah  for loop yang merupakan pilihan terbaik.

sintaks  for  loop.

1for (expr1; expr2; expr3)


2{
3  // code to execute
4}
Ekspresi  expr1  digunakan untuk menginisialisasi variabel, dan itu selalu dijalankan.
Ekspresi  expr2  juga dieksekusi di awal loop, dan jika bernilai true, kode loop dieksekusi.
Setelah eksekusi kode loop  expr3  dieksekusi. Secara umum,  expr3 digunakan untuk mengubah
nilai suatu variabel yang digunakan di ekspresi  expr2 .

Mari kita lihat contoh berikut untuk melihat cara kerjanya.

1<?php
2for ($i=1; $i<=10; ++$i)
3{
4  echo sprintf("The square of %d is %d.</br>", $i, $i*$i);
5}
6?>
Program di atas menampilkan kuadrat dari sepuluh angka pertama. Ini menginisialisasi  $i  ke 1,
berulang selama  $i  kurang dari atau sama dengan 10, dan menambahkan 1 ke  $i  pada setiap
iterasi.

For Each

Foreach  loop digunakan untuk mengalihkan variabel array. Jika Anda memiliki variabel array,
dan Anda ingin melewati setiap elemen array itu,  foreach  loop adalah pilihan terbaik.

Mari kita lihat beberapa contoh.

01<?php
02$fruits = array('apple', 'banana', 'orange', 'grapes');
03foreach ($fruits as $fruit)
04{
05  echo $fruit;
06  echo "<br/>";
07}
08 
09$employee = array('name' => 'John Smith', 'age' => 30, 'profession' => 'Software Engineer');
10foreach ($employee as $key => $value)
11{
12  echo sprintf("%s: %s</br>", $key, $value);
13  echo "<br/>";
14}
15?>
Jika Anda ingin mengakses nilai array, Anda bisa menggunakan versi pertama  foreach  loop
seperti yang ditunjukkan pada contoh di atas. Di sisi lain, jika Anda ingin mengakses kunci dan
nilai, Anda dapat melakukannya seperti yang ditunjukkan pada contoh  $employee  di atas.

Anda mungkin juga menyukai