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 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
Perc abangan If
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.
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;
if ($lulus) {
echo "Variabel lulus bernilai true <br>";
}
Coba anda ganti variabel $lulus pada Kode 1 di atas menjadi false , lalu
jalankan lagi programnya.
Kita bisa menangani hal tersebut dengan membuat blok kode else . Kita ubah
Kode 1 di atas menjadi seperti berikut:
<?php
$nilai = 60;
echo "<br>";
https://jagongoding.com/web/php/dasar/logika-percabangan/ 4/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
<?php
$nilai = 60;
echo "<br>";
85-100 A
75-84 B
60-74 C
50-59 D
0-49 E
https://jagongoding.com/web/php/dasar/logika-percabangan/ 5/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
<?php
$nilai = 56;
https://jagongoding.com/web/php/dasar/logika-percabangan/ 6/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
Coba ubah isi dari variabel $nilai lalu refresh halaman web untuk memeriksa
apakah pengkondisian yang kita buat sudah benar atau tidak.
padahal ia bukan tipe data boolean , dan juga ada beberapa hal yang dianggap
false padahal ia bukan tipe data boolean .
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.
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.
<?php
$nama = "";
if ($nama) {
echo "dianggap true";
} else {
echo "dianggap false";
}
Coba ganti isi dari variabel $nama menjadi nilai string yang lain, lalu lihat
seperti apa hasilnya.
<?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
}
https://jagongoding.com/web/php/dasar/logika-percabangan/ 8/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
Ini membuat program kita tidak error, karena menampilkan atau menggunakan
sebuah variabel yang sebelumnya tidak pernah didefinisikan akan menyebabkan
error.
<?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>';
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.
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>';
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 .
Bagaimana caranya?
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.
Ternary
Ternary adalah cara singkat mendefinisikan logika percabangan. Ia mirip
dengan if else (tanpa elseif ).
<?php
$nilai = 50;
https://jagongoding.com/web/php/dasar/logika-percabangan/ 11/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
echo "<br>";
<?php
$nilai = 50;
echo $nilai > 70 ? "Selamat, anda lulus!" : "Mohon maaf, anda harus mengulang";
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";
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
Menjadi:
<?php
https://jagongoding.com/web/php/dasar/logika-percabangan/ 13/16
2/2/2022 PHP Dasar: Logika Percabangan | Jago Ngoding
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.
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
Artikel Terkait
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
Write Preview
Sign in to comment
https://jagongoding.com/web/php/dasar/logika-percabangan/ 16/16