Lompat ke konten utama

Kompetisi Ajak Teman: hadiah total Rp1.000.000 tunai untuk 3 pengajak terbanyak. Berakhir 29 November 2026. Ikut kompetisi

←

PHP Dasar

Pelajaran 3 dari 15

Program PHP pertama: menjalankan, variabel, operator

Operator, konversi tipe, dan perbandingan

Setelah pelajaran ini kamu bisa menghitung hasil operator aritmetika, cast (int), perbandingan == dan ===, serta memformat Rupiah dengan number_format.

±13 menitDiperiksa 5 Okt 2026

Materi

Operator aritmetika PHP adalah `+`, `-`, `*`, `/`, `%` (sisa bagi), dan `**` (pangkat). Pembagian `/` menghasilkan float bila tidak habis dibagi: `7 / 2` bernilai `3.5`, bukan 3. Untuk hasil bagi bulat, pakai `intdiv(7, 2)` yang bernilai 3.

PHP mengubah tipe secara otomatis saat dibutuhkan. `"5" + "3"` bernilai 8 karena kedua string berisi angka, sedangkan `"5" . "3"` bernilai `"53"` karena titik menggabungkan teks. Cast `(int)` mengubah nilai ke bilangan bulat secara paksa: `(int) "25 porsi"` bernilai 25 karena angka di depan diambil, dan `(int) "abc"` bernilai 0.

Perbandingan `==` membandingkan nilai setelah tipe disamakan, sedangkan `===` juga mensyaratkan tipe yang sama. Jadi `"0" == 0` bernilai true, tetapi `"0" === 0` bernilai false. Sejak PHP 8, string yang bukan angka dibandingkan dengan angka sebagai teks, sehingga `"abc" == 0` bernilai false; di PHP 7 nilainya true, dan contoh lama di internet masih menulis begitu.

Untuk menampilkan Rupiah, `number_format($angka, 0, ',', '.')` memakai nol desimal, koma sebagai pemisah desimal, dan titik sebagai pemisah ribuan. Tanpa argumen tambahan, `number_format(1250000)` menghasilkan `1,250,000` dengan gaya Inggris.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 1 dari 3

Apa keluaran program ini?

<?php
$total = 7;
$orang = 2;
echo $total / $orang;
echo " ";
echo intdiv($total, $orang);
echo " ";
echo $total % $orang;
Pilih satu jawaban

Latihan 2 dari 3

Ketiga var_dump mencetak bool(...). Bagaimana urutan nilainya di PHP 8?

<?php
$stok = "0";
var_dump($stok == 0);
var_dump($stok === 0);
var_dump("abc" == 0);
Pilih satu jawaban

Latihan 3 dari 3

Pilihan mana yang mengganti `/* ??? */` agar program mencetak `Rp1.250.000`?

<?php
$gaji = 1250000;
echo "Rp" . /* ??? */;
Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke