Variabel PHP
Pelajari cara menggunakan variabel dalam PHP - dari deklarasi dasar hingga berbagai tipe data. Variabel adalah fondasi programming yang wajib dipahami setiap developer!
school Pendahuluan
Mau ngoding PHP tapi bingung soal variabel? Tenang! Kali ini kita akan pelajari konsep variabel dari dasar sampai mahir. Variabel adalah salah satu konsep terpenting dalam programming.
- Foundation semua bahasa pemrograman
- Menyimpan dan memanipulasi data
- Membuat kode yang dinamis dan fleksibel
- Dasar untuk logika programming
- Essential untuk aplikasi web development
help Apa itu Variabel?
Variabel adalah lokasi penyimpanan di memori komputer yang berisi nilai atau informasi. Think of it sebagai kotak penyimpanan dengan label yang bisa kalian isi dengan berbagai data.
Konsep Sederhana Variabel:
Container
Tempat menyimpan data
Label
Nama untuk mengakses data
Dynamic
Nilai bisa berubah
Variabel adalah kode program yang digunakan untuk menampung nilai tertentu. Nilai yang disimpan bisa dipindahkan ke database, ditampilkan ke user, atau diproses lebih lanjut.
edit Mendeklarasikan Variabel PHP
Variabel di PHP harus diawali dengan tanda dollar ($). Ini yang membedakan PHP dengan bahasa lain seperti JavaScript atau Python.
📋 Aturan Penamaan Variabel
Diawali dengan $
Semua variabel PHP harus dimulai dengan tanda dollar
Karakter Pertama
Huruf (a-z, A-Z) atau underscore (_) saja
Karakter Selanjutnya
Huruf, angka (0-9), atau underscore
Case Sensitive
$nama berbeda dengan $Nama atau $NAMA
✅ Contoh Penamaan
$nama
$_alamat
$umur25
$namaLengkap
$email_user
$data2024
nama // Missing $
$25umur // Starts with number
$nama-user // Contains dash
$nama user // Contains space
$2x // Starts with number
🚀 Contoh Deklarasi Dasar
<?php
// Menyimpan data ke dalam variabel
$nama = "Muhammad Fachri";
$alamat = "DKI Jakarta";
$umur = 25;
// Menampilkan variabel
echo $nama; // Output: Muhammad Fachri
echo "<br>";
echo $alamat; // Output: DKI Jakarta
?>
💡 Contoh Penggunaan Lanjutan
<?php
$nama = "Muhammad Fachri";
$alamat = "DKI Jakarta";
// Menggabungkan variabel dengan string
echo "Hai, perkenalkan nama saya " . $nama . " dan saya tinggal di " . $alamat;
// Atau menggunakan double quotes (akan dibahas nanti)
echo "Hai, perkenalkan nama saya $nama dan saya tinggal di $alamat";
?>
Coba buat variabel sendiri:
- Buat variabel
$hobby
dengan nilai hobby kalian - Buat variabel
$makanan_favorit
dengan nama makanan kesukaan - Tampilkan keduanya dengan
echo
format_quote String: Single vs Double Quoted
PHP punya dua cara utama untuk menyimpan teks: menggunakan single quotes (') dan double quotes ("). Keduanya punya perbedaan penting!
String dengan single quotes tidak memproses variabel dan escape sequences (kecuali \' dan \\).
<?php
$judul1 = 'String Single Quoted';
$judul2 = 'don\'t'; // Escape single quote
$linkurl = 'http://example.com';
$direktori = 'C:\\xampp\\htdocs\\project'; // Double backslash
$nama = 'John';
$pesan = 'Hello $nama'; // Variabel TIDAK akan diproses
echo $judul1 . "<br>";
echo $judul2 . "<br>";
echo $pesan . "<br>"; // Output: Hello $nama
?>
don't
Hello $nama
- Ketika string tidak mengandung variabel
- Untuk performa yang sedikit lebih baik
- Ketika ingin menampilkan $ secara literal
String dengan double quotes memproses variabel dan escape sequences seperti \n, \t, dll.
<?php
$judul1 = "String Double Quoted";
$judul2 = "you\"ll be fine"; // Escape double quote
$nama = "Budi";
// Variabel akan diproses di dalam double quotes
$pesan = "Hello $nama, welcome to PHP!";
$info = "Nama: $nama\nUmur: 25\tKota: Jakarta";
echo $judul1 . "<br>";
echo $judul2 . "<br>";
echo $pesan . "<br>";
echo nl2br($info); // nl2br mengubah \n jadi <br>
?>
you"ll be fine
Hello Budi, welcome to PHP!
Nama: Budi
Umur: 25 Kota: Jakarta
- Ketika string mengandung variabel
- Memerlukan escape sequences (\n, \t, dll)
- Untuk string interpolation yang mudah
⚡ Perbandingan Langsung
<?php
$nama = "Alice";
$umur = 30;
// Single quotes - literal
$single = 'Nama: $nama, Umur: $umur tahun';
echo $single . "<br>";
// Double quotes - processed
$double = "Nama: $nama, Umur: $umur tahun";
echo $double . "<br>";
// Concatenation (penyambungan)
$concat = 'Nama: ' . $nama . ', Umur: ' . $umur . ' tahun';
echo $concat;
?>
Nama: Alice, Umur: 30 tahun
Nama: Alice, Umur: 30 tahun
data_object Tipe Data: Integer & Float
Selain string, PHP juga mendukung tipe data numerik. Mari pelajari Integer dan Float!
Integer adalah bilangan bulat tanpa koma desimal. Bisa positif, negatif, atau nol.
- Harus memiliki sedikitnya satu digit
- Tidak boleh memiliki koma desimal
- Bisa positif maupun negatif
- Tidak ditulis dengan tanda kutip
<?php
// Contoh integer
$positif = 42;
$negatif = -15;
$nol = 0;
// Operasi matematika
$a = 10;
$b = 3;
$penjumlahan = $a + $b; // 13
$pengurangan = $a - $b; // 7
$perkalian = $a * $b; // 30
$pembagian = $a / $b; // 3.333... (hasilnya float!)
echo "Penjumlahan: $penjumlahan<br>";
echo "Pengurangan: $pengurangan<br>";
echo "Perkalian: $perkalian<br>";
echo "Pembagian: $pembagian<br>";
// Mengecek tipe data
echo "Tipe data \$a: " . gettype($a) . "<br>";
echo "Apakah \$a integer? " . (is_int($a) ? 'Ya' : 'Tidak');
?>
Pengurangan: 7
Perkalian: 30
Pembagian: 3.3333333333333
Tipe data $a: integer
Apakah $a integer? Ya
Float (floating point) adalah bilangan desimal. Cocok untuk perhitungan yang membutuhkan presisi.
<?php
// Contoh float
$pi = 3.14159;
$harga = 25.50;
$tinggi = 175.5;
// Contoh kasus: Kimo belanja
$kue_nastar = 37.550;
$tempat = 15.750;
$total = $kue_nastar + $tempat;
echo "Harga kue nastar: Rp" . number_format($kue_nastar, 3) . "<br>";
echo "Harga tempat: Rp" . number_format($tempat, 3) . "<br>";
echo "Total belanja: Rp" . number_format($total, 3) . "<br><br>";
// Perhitungan luas lingkaran
$jari_jari = 7.5;
$luas = $pi * $jari_jari * $jari_jari;
echo "Jari-jari lingkaran: $jari_jari cm<br>";
echo "Luas lingkaran: " . number_format($luas, 2) . " cm²<br><br>";
// Cek tipe data
echo "Tipe data \$pi: " . gettype($pi) . "<br>";
echo "Apakah \$pi float? " . (is_float($pi) ? 'Ya' : 'Tidak');
?>
Harga tempat: Rp15.750
Total belanja: Rp53.300
Jari-jari lingkaran: 7.5 cm
Luas lingkaran: 176.71 cm²
Tipe data $pi: double
Apakah $pi float? Ya
- Kadang hasil perhitungan tidak persis (floating point precision)
- Gunakan
number_format()
untuk formatting tampilan - Untuk uang, pertimbangkan menggunakan integer (dalam sen/rupiah terkecil)
🔍 Debug dengan var_dump()
<?php
$integer = 32;
$string = "Hello world!";
$float = 32.5;
$array = array("red", "green", "blue");
echo "var_dump berbagai tipe data:<br><br>";
var_dump($integer);
echo "<br>";
var_dump($string);
echo "<br>";
var_dump($float);
echo "<br>";
var_dump($array);
?>
int(32)
string(12) "Hello world!"
float(32.5)
array(3) { [0]=> string(3) "red" [1]=> string(5) "green" [2]=> string(4) "blue" }
lock Variabel Static
Variabel static adalah variabel yang mempertahankan nilainya antara pemanggilan fungsi. Berbeda dengan variabel biasa yang "reset" setiap kali fungsi dipanggil.
Bayangkan seperti counter yang tidak pernah direset. Setiap kali fungsi dipanggil, variabel static "mengingat" nilai terakhirnya.
<?php
function normalVar() {
$x = 0; // Reset ke 0 setiap dipanggil
echo $x . " ";
$x++;
}
normalVar(); // Output: 0
normalVar(); // Output: 0
normalVar(); // Output: 0
?>
<?php
function staticVar() {
static $x = 0; // Hanya diinisialisasi sekali
echo $x . " ";
$x++;
}
staticVar(); // Output: 0
staticVar(); // Output: 1
staticVar(); // Output: 2
?>
💡 Contoh Praktis: Page View Counter
<?php
function hitungKunjungan() {
static $pengunjung = 0;
$pengunjung++;
echo "Anda adalah pengunjung ke-$pengunjung<br>";
return $pengunjung;
}
// Simulasi beberapa kunjungan
hitungKunjungan(); // Pengunjung ke-1
hitungKunjungan(); // Pengunjung ke-2
hitungKunjungan(); // Pengunjung ke-3
// Function lain dengan static
function generateId() {
static $id = 1000;
return ++$id; // Pre-increment
}
echo "<br>ID yang di-generate:<br>";
echo "User ID: " . generateId() . "<br>"; // 1001
echo "User ID: " . generateId() . "<br>"; // 1002
echo "User ID: " . generateId() . "<br>"; // 1003
?>
Anda adalah pengunjung ke-2
Anda adalah pengunjung ke-3
ID yang di-generate:
User ID: 1001
User ID: 1002
User ID: 1003
Kenapa variabel static berguna?
- Counter: Menghitung berapa kali fungsi dipanggil
- Caching: Menyimpan hasil perhitungan yang mahal
- State: Mempertahankan status antar pemanggilan
- ID Generator: Membuat ID yang unik dan berurutan