Anda di halaman 1dari 16

2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

N ur ul H ud a
3 F eb r ua r y 2 02 0

B er a nda › Web › P HP › P HP D a s a r

PHP Dasar: Logika


Percabangan

PHP PHP Da sa r

https://jagongoding.com/web/php/dasar/logika-percabangan/ 1/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Daftar Isi

Struktur Kontrol

Mac am-Mac am Perc abangan Pada PHP

Perc abangan If

Contoh Menampilkan Nilai Huruf Menggunakan If

Hal -Hal yang dianggap true atau f alse

Perc abangan Switc h Case

Contoh Menampilkan Nilai Huruf Menggunakan Switc h Case

Ternary

Kapan harus menggunakan if , switc h c ase, atau ternary?

Kesimpulan

Pembahasan Selanjutnya

Bagikan:

Sampai sini kita telah belajar tentang php file, variabel dan tipe data, dan
macam-macam operator.

Pada tutorial kali ini, kita akan mempelajari tentang sesuatu yang sangat
penting: yaitu logika percabangan pada PHP.

Jika anda merasa tutorial ini bermanfaat, anda bisa membagikan seri tutorial
belajar PHP dasar ini ke teman-teman anda, rekan kerja, atau ke grup sosial
media.

Struktur Kontrol
Kita telah mempelajari beberapa unsur dasar dalam PHP. Kita sudah bisa
membuat variabel, memanipulasinya dengan operator, mengetahui tipe
datanya, dan juga kita bisa menampilkannya dengan perintah echo .

https://jagongoding.com/web/php/dasar/logika-percabangan/ 2/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Akan tetapi, program yang kita tulis sejauh ini masih sangat sederhana. Semua
baris berjalan begitu saja dari atas ke bawah. Nah, bagaimana jika kita akan
menampilkan sesuatu berdasarkan kondisi? Seperti misalnya: kita akan
menampilkan string “lulus” jika variabel $nilai lebih dari 70, dan kita akan
menampilkan string “tidak lulus” jika nilainya di bawah itu?

Itu lah fungsi control structure atau struktur kontrol. Struktur kontrol
memungkinkan kita untuk melakukan tindakan di luar alur default
pengeksekusian program (yaitu dari atas ke bawah). Dengan menggunakan
struktur kontrol, kita bisa mengeksekusi sebagian kode program, dan tidak
mengeksekusi sebagian yang lain.

Di dalam PHP, terdapat dua jenis struktur kontrol: yaitu logika percabangan,
dan juga blok kode perulangan.

Dalam kesempatan ini kita akan mempelajari dan mempraktikkan logika


percabangan pada PHP. Ada pun pada tutorial selanjutnya, kita akan ambil
pembahasan tentang perulangan.

Macam-Macam Percabangan Pada PHP


Untuk struktur kontrol percabangan pada PHP, terdapat beberapa macam. Ada
if else , ada switch case , dan ada ternary . Dalam tutorial ini kita akan
membahas ketiga jenis percabangan tersebut.

Percabangan If
Percabangan if adalah percabangan yang paling dasar. Tugasnya adalah
memeriksa nilai boolean atau sebuah ekspresi logika.

Jika suatu variabel atau suatu ekspresi logika bernilai true , maka proses yang
ada di dalam blok kode if akan dijalankan. Jika tidak, maka perintah/kode
yang ada di dalam blok if tidak akan dijalankan.

Contoh:

https://jagongoding.com/web/php/dasar/logika-percabangan/ 3/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

<?php
$lulus = true;

echo 'Memeriksa variable $lulus <br>';

if ($lulus) {
echo "Variabel lulus bernilai true <br>";
}

Kode 1: contoh sederhana penggunaan if

Coba anda ganti variabel $lulus pada Kode 1 di atas menjadi false , lalu
jalankan lagi programnya.

Pengecualian menggunakan else

Bagaimana jika ternyata kondisi yang didefinisikan di dalam if ternyata tidak


terpenuhi alias bernilai false ?

Kita bisa menangani hal tersebut dengan membuat blok kode else . Kita ubah
Kode 1 di atas menjadi seperti berikut:

<?php

$nilai = 60;

echo 'Memeriksa variable $nilai <br>';


echo "Nilai: {$nilai} <br>";

if ($nilai >= 70) {


echo "Selamat, siswa !";
} else {
echo "Mohon maaf, siswa tidak lulus";
}

echo "<br>";

Kode 2: contoh sederhana penggunaan if dan else

Membuat lebih dari 1 kondisi dengan elseif

https://jagongoding.com/web/php/dasar/logika-percabangan/ 4/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

<?php

$nilai = 60;

echo 'Memeriksa variable $nilai <br>';


echo "Nilai: {$nilai} <br>";

if ($nilai >= 85) {


echo "Sangat mengesankan!";
} elseif ($nilai >= 70) {
echo "Selamat anda lulus!";
} else {
echo "Jangan menyerah, anda pasti bisa!";
}

echo "<br>";

Kode 3: contoh penggunaan if, else if dan else

Contoh Menampilkan Nilai Huruf Menggunakan


If
Sebagai contoh, kita akan menampilkan peringkat huruf berdasarkan variabel
$nilai . Kondisi yang akan kita gunakan adalah seperti pada Tabel 1.

Rentang Nilai Peringkat Huruf

85-100 A

75-84 B
60-74 C

50-59 D

0-49 E

Tabel 1: pengkondisian peringkat huruf

Untuk membuat pengkondisian pada Tabel 1, setidaknya kita membutuhkan 5


buah pengkondisian.

https://jagongoding.com/web/php/dasar/logika-percabangan/ 5/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Perlu dipahami, bisa jadi PHP adalah bahasa


pemrograman pertama yang anda pelajari, sehingga
anda masih beranggapan bahwa menulis kode program
adalah proses yang kaku. Bagaimana maksudnya? Yaitu
anda beranggapan: untuk membuat seperti ini caranya
harus seperti ini, untuk membuat seperti itu, caranya
harus seperti itu.

Itu padangan yang salah, karena proses penulisan kode


sangat bersifat fleksibel. Tergantung dengan logika
masing-masing penulisnya. Karena satu masalah yang
sama jika dikerjakan oleh orang yang berbeda, bisa
menghasilkan solusi yang berbeda pula.

Di sini saya memberi contoh sederhana bagaimana cara mengimplementasi


logika pada tabel 1, dan ini tentu saja bukan satu-satunya cara, anda bisa
membuat cara anda sendiri.

Silakan coba dan praktikkan kode program berikut:

<?php

$nilai = 56;

echo "Nilai: {$nilai} <br>";

if ($nilai >= 85 and $nilai <= 100) {


echo "Predikat: A";
} elseif ($nilai >= 75) {
echo "Predikat: B";
} elseif ($nilai >= 60) {
echo "Predikat: C";
} elseif ($nilai >= 50) {
echo "Predikat: D";
} elseif ($nilai >= 0) {
echo "Predikat: E";
} else {
echo "Nilai tidak valid.";

https://jagongoding.com/web/php/dasar/logika-percabangan/ 6/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

echo "<br>"; # untuk membuat baris baru pada HTML

Kode 4: implementasi pengkondisian peringkat huruf dari table 1

Coba ubah isi dari variabel $nilai lalu refresh halaman web untuk memeriksa
apakah pengkondisian yang kita buat sudah benar atau tidak.

Hal-Hal yang dianggap true atau false


Ada beberapa hal di dalam bahasa pemrograman PHP yang dianggap true

padahal ia bukan tipe data boolean , dan juga ada beberapa hal yang dianggap
false padahal ia bukan tipe data boolean .

Apa saja? Berikut ini adalah beberapa di antaranya:

Bilangan numeric selain 0 dianggap true

Semua bilangan numeric selain 0 , maka dianggap true . Ada pun variabel
integer mau pun float dengan nilai 0 , maka ia dianggap false jika kita
masukkan dalam kondisi if .

<?php
$nilai = 0;
if ($nilai) {
echo "nilai: {$nilai} dianggap true";
} else {
echo "nilai: {$nilai} dianggap false";
}

Kode 5: numeric bernilai 0 dianggap false dan selain itu maka dianggap true

Anda bisa mengganti isi dari variabel $nilai menjadi angka negatif mau pun
positif dan lihat seperti apa hasilnya.

String yang tidak kosong dianggap true

https://jagongoding.com/web/php/dasar/logika-percabangan/ 7/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

String kosong juga dianggap akan dianggap false, dan string yang tidak kosong
akan dianggap true.

Anda bisa mencoba kode program pada Kode 5 di bawah ini:

<?php
$nama = "";

if ($nama) {
echo "dianggap true";
} else {
echo "dianggap false";
}

Kode 5: string kosong dianggap false

Coba ganti isi dari variabel $nama menjadi nilai string yang lain, lalu lihat
seperti apa hasilnya.

Nilai null dianggap false

Selain itu, nilai null juga dianggap false dalam PHP.

<?php

$nilai = null;

if ($nilai) {
echo "dianggap true";
} else {
echo "dianggap false";
}

if (@$namaLengkap) {
echo "Jika variabel namaLengkap telah didefinisikan sebelumnya dan ia bukan 0 atau stri
} else {
echo "Jika variabel namaLengkap tidak pernah didefinisikan sebelumnya. Tanda @ membuatn
}

Kode 6: nilai null dianggap false

https://jagongoding.com/web/php/dasar/logika-percabangan/ 8/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Anda bisa memperhatikan dalam contoh Kode 6 di atas, terdapat tanda @

sebelum variabel $namaLengkap . Tanda @ tersebut berfungsi untuk memberi


nilai null terhadap suatu variabel yang tidak pernah didefinisikan sebelumnya.

Ini membuat program kita tidak error, karena menampilkan atau menggunakan
sebuah variabel yang sebelumnya tidak pernah didefinisikan akan menyebabkan
error.

Percabangan Switch Case


Percabangan yang kedua adalah switch .. case . Ini adalah alternatif yang
bisa kita gunakan untuk memecahkan permasalahan logika dalam PHP.

Akan tetapi, penggunaan switch .. case ditujukan untuk kasus-kasus yang


lebih sederhana dari pada if .. else .

Perhatikan Kode 7 berikut ini lalu praktikkan.

<?php

$url = '/about';

switch ($url) {
case '/':
echo 'Selamat datang di dashboard.';
break;
case '/about':
echo 'Selamat datang di halaman about.';
break;
case '/contact':
echo 'Selamat datang di halaman kontak.';
break;
default:
echo 'Maaf halaman yang anda cari tidak ditemukan.';
}

echo '<br>';

Kode 7: contoh sederhana switch case

https://jagongoding.com/web/php/dasar/logika-percabangan/ 9/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Silakan anda ubah nilai dari variable $url pada Kode 7 di atas, lalu refresh
halaman web. Dan lihat apakah percabangan kita dengan switch case telah
berfungsi dengan benar atau tidak.

Jika tanpa Break

Dalam blok kode switch .. case , kita harus menggunakan statement break .
Karena kalau tidak, setelah sistem berhasil menemukan case yang bernilai
true , dia akan tetap mengeksekusi case yang dibawahnya meskipun
kondisinya sudah tidak sesuai lagi.

Coba hapus setiap perintah break pada Kode 7 hingga menjadi seperti pada
Kode 8 berikut:

<?php

$url = '/about';

switch ($url) {
case '/':
echo 'Selamat datang di dashboard.';
case '/about':
echo 'Selamat datang di halaman about.';
case '/contact':
echo 'Selamat datang di halaman kontak.';
default:
echo 'Maaf halaman yang anda cari tidak ditemukan.';
}

echo '<br>';

Kode 8: menghapus statement break pada switch .. case

Jalankan halaman web, lalu perhatikan apa yang terjadi.

Contoh Menampilkan Nilai Huruf Menggunakan


Switch Case

https://jagongoding.com/web/php/dasar/logika-percabangan/ 10/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Kita telah memiliki kondisi peringkat nilai huruf pada Tabel 1 di atas. Kita juga
telah menyelesaikannya menggunakan if else .

Sekarang, kita ingin mencoba mengimplementasikan tabel logika tersebut


dengan menggunakan switch ... case .

Bagaimana caranya?

Jawabannya adalah: tidak bisa.

Serius?

Ya!

Karena switch ... case hanya menerima satu variabel saja, dan ia hanya
mengeksekusi setiap case dengan nilai yang sesuai.

Dan kita tidak bisa membuat case dengan sebuah ekspresi logika.

Sehingga untuk menerapkan logika pengkondisian pada Tabel 1, kita harus


menggunakan if ... else .

Ternary
Ternary adalah cara singkat mendefinisikan logika percabangan. Ia mirip
dengan if else (tanpa elseif ).

Dan ternary didefinisikan hanya dalam satu baris saja.

Misal kita punya blok if else seperti ini:

<?php

$nilai = 50;

if ($nilai > 70) {


echo "Selamat, anda lulus!";
} else {
echo "Mohon maaf, anda harus mengulang";
}

https://jagongoding.com/web/php/dasar/logika-percabangan/ 11/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

echo "<br>";

Kode 9: contoh if else

Maka anda bisa mengubahnya seperti ini:

<?php

$nilai = 50;

echo $nilai > 70 ? "Selamat, anda lulus!" : "Mohon maaf, anda harus mengulang";

Kode 10: contoh sederhana penggunaan ternary

Bagaimana, lebih singkat kan? Anda hanya perlu tanda ? dan tanda : .

Anda juga bisa menggunakannya untuk mengisi sebuah nilai ke dalam variabel
seperti pada Kode 10 berikut:

<?php

$nilai = 50;

$pesan = $nilai > 70 ? "Selamat, anda lulus!" : "Mohon maaf, anda harus mengulang";

Kode 10: contoh sederhana penggunaan ternary untuk pengisian variabel

Null Colleasing Operator

Operator null colleasing didefinisikan dengan simbol ?? dan ?: . Ia adalah


operator yang digunakan untuk memeriksa antar dua operan: jika operan
pertama tidak null atau tidak dianggap false, maka ia akan dipilih. Jika tidak,
maka operan ke dua yang akan dipilih.

Intinya, dengan operator ini, anda bisa menyingkat statement tenary berikut:

<?php

https://jagongoding.com/web/php/dasar/logika-percabangan/ 12/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

echo @$namaPeserta ? $namaPeserta : "Nama tidak diisi";

Menjadi:

<?php

echo @$namaPeserta ?: "Nama tidak diisi";

Lebih singkat bukan?

Kapan harus menggunakan if, switch case, atau


ternary?
Kapan harus menggunakan if?

Ketika anda memiliki logika yang cukup rumit.


Melibatkan lebih dari satu variabel atau juga
membutuhkan ekspresi logika yang panjang, maka
gunakanlah if.

Kapan harus menggunakan ternary?

Ketika anda memiliki blok if sederhana yang hanya


terdiri dari if dan else saja, anda bisa menggunakan
ternary untuk mengubah kode anda menjadi lebih
singkat.

Kapan harus menggunakan switch .. case ?

Sejujurnya saya pribadi sangat jarang sekali


menggunakan switch case. Anda bisa menggunakan
switch case jika cabang pengkondisian anda hanya

https://jagongoding.com/web/php/dasar/logika-percabangan/ 13/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

melibatkan satu variabel saja dan tidak mengandung


operator logika semisal lebih dari ( > ) atau kurang dari
( < ) dan sebagainya.

Kesimpulan
Struktur kontrol memungkinkan kita untuk melakukan tindakan di luar alur
default pengeksekusian program: yaitu dari atas ke bawah. Dengan
menggunakan struktur kontrol, kita bisa mengeksekusi sebagian kode program,
dan tidak mengeksekusi sebagian yang lain.

Di dalam PHP, terdapat dua jenis struktur kontrol: yaitu logika percabangan,
dan juga blok kode perulangan.

Untuk logika percabangan, terdapat dua jenis utama: yaitu if .. else dan
switch .. case . Juga ada alternatif lain seperti ternary dan null colleasing
operator yang kesemuanya telah kita dalam artikel ini.

Pembahasan Selanjutnya
Pada tutorial selanjutnya, kita masih berada dalam pembahasan struktur kontrol
pada PHP. Dan yang akan kita bahas adalah: Struktur Kontrol Blok
Perulangan.

Jangan lupa share tutorial ini, ya!

Terima kasih banyak.

Pemrograman PHP: Pemula Sampai Mahir.

Belajar pemrograman PHP dari pemula sampai mahir disertai studi


kasus. Materi akan selalu di-update secara berkala.

Baru 4.7 ⭐⭐⭐⭐ (169 Peserta) Ambil Kelas


https://jagongoding.com/web/php/dasar/logika-percabangan/ 14/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Bagikan:

Nurul Huda

Web Developer. FOSS addict. Pengguna Arch Linux (dan Ubuntu). Penyuka
kopi saset. Dan pernah kuliah Teknik Informatika sampai lulus.

D u k u n g J ago N go din g ☕

Sebelumnya Selanjutnya

PHP Dasar: Mac am Mac am O perator PHP Dasar: Perulangan

Artikel Terkait

PHP Dasar: Mac am Mac am O perator

PHP Dasar: Tipe Data Dan Variabel


PHP
Dasar:
Tipe
Data
Dan
Variabel

PHP PHP Dasar: Hell o World

Dasar:
Hello
World
Pengertian Composer dan Cara Menggunakannya

https://jagongoding.com/web/php/dasar/logika-percabangan/ 15/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding

Konf igurasi Laravel dan PostgreSQ L Beserta Contoh Migration

0 Comments - powered by utteranc.es

Write Preview

Sign in to comment

Styling with Markdown is supported Sign in with GitHub

© 2022 Jago Ngoding


Icons made by F reep ik from www. fl a t ic o n. c o m

https://jagongoding.com/web/php/dasar/logika-percabangan/ 16/16

Anda mungkin juga menyukai