Penjelasan Struktur Logika Switch di PHP

tutorial belajar PHP untuk pemula

Struktur alur program yang akan kita bahas selanjutnya ialah tentang pengertian dan cara penulisan struktur Switch dalam PHP. Struktur switch ini bisa dipakai sebagai pengganti struktur IF.

Pengertian Struktur logika Switch

Struktur logika switch ialah sebuah stuktur percabangan yang akan memeriksa suatu variabel, lalu menjalankan perintah-perintah yang cocok dengan keadaan yang boleh jadi terjadi untuk variabel itu. Struktur switch ini serupa dengan struktur IF yang ditulis berulang.

Katakan kita mau membuat sebuah program yang akan menampilkan kata dari angka 0-5, sehingga terdapat 6 kemungkinan yang terjadi.  Bila memakai struktur IF, maka kita akan memerlukan 6 perulangan sebagai berikut:

<?php
$a=3;
if ($a=="0") 
elseif ($a=="1") 
elseif ($a=="2") 
elseif ($a=="3") 
elseif ($a=="4") 
elseif ($a=="5") 
else
    echo "Angka diluar jangkauan";
?>

Tak ada yang salah dari kode program itu, tetapi bila kita memakai switch, kode itu bisa ditulis jadi:

<?php
$a=3;
switch ($a)
?>

Kedua kode program akan menghasilkan output yang sama, tetapi untuk keadaan logika yang diuji merupakan keadaan sederhana, penulisan dengan switch lebih dianjurkan dibandingkan IF.

Aturan Penulisan Struktur Switch dalam PHP

Seperti yang tampak pada contoh sebelumnya, struktur switch terdiri atas beberapa bagian, berikut format dasar penulisan switch dalam PHP:

switch ($var) 

Sesudah kata kunci switch, kita perlu menyematkan variabel yang akan diperiksa nilainya didalam tanda kurung, lalu memulai block switch dengan kurung kurawal.

Tiap keadaan yang boleh jadi terjadi dicantumkan sesudah kata kunci case, lalu disertai dengan nilai yang akan dibandingkan dengan nilai variabel switch. Bila keadaan sesuai, maka baris program statement akan dijalankan. Kata kunci break dipakai untuk keluar dari switch, sehingga PHP tak harus memeriksa case selanjutnya.

Alur program untuk switch akan dieksekusi dari baris pertama sampai terakhir. Kata kunci break memegang andil penting untuk menghentikan switch.

Perhatikan contoh kode PHP berikut:

<?php
$a=1;
switch ($a)
?>

Program diatas akan memeriksa nilai dari $a, dan memberikan output bergantung kepada nilai $a itu. Bila sepintas dilihat, maka keluaran program ialah: “Angka Satu” sesuai dengan nilai variabel $a. Namun, bila kamu menjalankan program diatas, PHP akan memberikan output berupa:

Angka Satu Angka Dua Angka Tiga

Apa yang terjadi? Hal ini berhubungan dengan bagaimana PHP menjalankan proses switch.

Saat program dijalankan, PHP pertama kali akan memeriksa case 0, yaitu apakah $a sama dengan 0, bila tidak, PHP akan lanjut ke case 1, dan memeriksa apakah $a sama dengan 1. Bila iya, maka PHP akan menjalankan echo “Angka Satu”, bersama seluruh perintah program pada case-case dibawahnya. Hal ini mungkin terasa aneh, tetapi adakalanya proses seperti inilah yang diperlukan.

Tetapi, untuk kasus diatas, kita mau mengistruksikan kepada PHP bahwa sesudah case didapati, maka switch harus berhenti.

Untuk arahan ini, kita perlu memakai kata kunci break. Arahan break memberitahu PHP untuk segera keluar dari switch, dan tidak menjalankan case lainnya.

Berikut ialah kode program switch kita sesudah ditambahnya keyword break:

<?php
$a=1;
switch ($a)
?>

Selain kata kunci break, PHP menyediakan kata kunci default untuk alur switch. Kata kunci ini berguna seperti ELSE di dalam struktur IF, yaitu keadaan dimana seluruh case untuk switch tak ada yang sesuai. Kata kunci default ini ditaruh di akhir dari switch.

Untuk contoh kita diatas, saya akan menambahkan bagian default sebagai perintah yang akan dijalankan bila nilai dari variabel $a duluar dari angka 0-5. Berikut kode PHP nya:

<?php
$a=9;
switch ($a)
?>

PHP membolehkan kita menjalankan satu statement saja untuk case yang berlainan, seperti contoh kode PHP berikut ini:

<?php
$a=3;
switch ($a)
?>

Didalam kode diatas, saya menyatukan beberapa case ke dalam 1 statement.

Penulisan case untuk struktur switch menyesuaikan dengan jenis tipe data yang akan diuji. Hingga bagian ini, saya cuma memakai contoh case untuk variabel dengan tipe angka, tetapi bila kamu memakai switch untuk tipe data string, maka kita perlu memakai tanda kutip untuk case.

Berikut contoh kode switch PHP untuk tipe data string:

<?php
$a=dua;
switch ($a)
?>

Perbedaan Antara struktur IF dengan Switch

Meskipun mempunyai tujuan yang hampir sama, tetapi struktur IF dan switch mempunyai perbedaan yang mendasar.

Didalam struktur switch, keadaan logika cuma akan diperiksa sekali saja, yaitu di awal perintah switch, dan hasilnya di bandingkan dengan setiap case. Namun di dalam struktur if, setiap keadaan akan sering diperiksa. Sehingga bila kamu mempunyai struktur percabangan yang banyak, struktur switch bakal lebih cepat dieksekusi.

Tetapi disisi lain, switch mempunyai keterbatasan dalam jenis operasi perbandingan yang bisa dilakukan. Operasi perbandingan di dalam switch terbatas untuk hal-hal sederhana seperti memeriksa nilai dari sebuah variabel.

Struktur switch tidak dapat dipakai untuk percabangan program dengan operasi yang lebih rumit seperti membandingkan 2 variabel. Kita tidak dapat memakai switch untuk membuat kode program menentukan nilai paling besar seperti contoh pada tuturial IF sebelum ini.

Untuk sebagian besar kasus, kita akan selalu memakai IF dibandingkan switch.


Butuh Web Developer Makassar atau Jasa SEO di Makassar yang bergaransi? Jangan ragu dengan infanthree.com. Kami juga penyedia Jasa Pembuatan Aplikasi Android di Makassar yang terkemuka. Selain itu ada layanan SEM, SMM, Internet Marketing Agency Makassar dan Social Media, Pembuatan Logo, Konten, Video, Maskot dan Instalasi jaringan ataupun mikrotik, hingga pelatihan komputer dan internet marketing.

Recommended Posts

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *