Operator Assignment di PHP – Pada tutorial sebelumnya, kita telah selesai membahas operator increment dan decrement pada PHP. Sekarang, kita akan membahas tentang operator Assignment dalam PHP.
Operator Assignment di PHP
Operator Assignment adalah operator yang berfungsi untuk menambahkan atau memasukkan sebuah nilai kedalam variabel. Terdapat 3 jenis operator assignment, yaitu assignment dengan nilai (assignment by value), assignment array, dan assignment dengan referensi (assignment by reference).
1. Assignment by Value
Assignment dengan nilai atau yang lebih di kenal dalam pemrograman dengan Assignment by Value adalah proses pemberian nilai ke dalam sebuah variabel dengan cara meng-copy nilai atau value dari variabel lain. Tanda sama dengan (=) merupakan tanda Assignment by Value. Ketika menggunakan operator “=”, PHP akan meng-copy nilai dari sisi kanan operator ke sisi kiri.
Selain itu, operator Assignment by Value dan lainnya memiliki arah proses kanan, sehingga proses pemberian nilai kepada sebuah variabel di mulai dari kanan.
Contohnya seperti di bawah ini:
<?php
$a = 4;
$b = 8;
$c = 12;
echo "\$a = $a, \$b = $b, \$c = $c <br>";
$a = $b = $c + 4;
echo "\$a = $a, \$b = $b, \$c = $c <br>";
?>
Contoh program di atas mendefinisikan 3 variabel, yaitu $a
, $b
, dan $c
dengan operator assignment by value. Pada beris terakhir, tertulis kode $a = $b = $c + 4
dan urutan pemrosesannya mulai dari kanan ke kiri menjadi $a = ($b = ($c + 4))
.
2. Assignment Array
Kita ibaratkan atau definisikan dengan mudah bahwa assignment array merupakan assignment yang berguas meng-input nilai ke dalam array. Tanda panah (>) merupakan tanda untuk operator ini.
3. Assignment Reference
Assignment dengan referensi atau sering di sebut dengan assignment by reference merupakan operator assignment khusus yang digunakan untuk meng-copy nilai referensi sebuah variabel.
Contohnya seperti di bawah ini:
<?php
$a = 4;
$b = $a;
echo "\$a = $a, \$b = $b <br>";
$a = $a + 4;
echo "\$a = $a, \$b = $b <br>";
$b = $b + 8;
echo "\$a = $a, \$b = $b <br>";
?>
Terlihat 2 buah variabel, yaitu $a
dan $b
. Variabel $a
di input dengan nilai 4, sedangkan variabel $b
meng-copy nilai dari variabel $a
. Selanjutnya ditampilkan kedua variabel tersebut menggunakan perintah echo
.
$a = 4;
$b = $a;
echo "\$a = $a, \$b = $b <br>";
Selanjutnya, nilai variabel $a
ditambah dengan 4, lalu menampilkan hasil kedua variabel tersebut.
$a = $a + 4;
echo "\$a = $a, \$b = $b <br>";
Pada variabel $b ditambah dengan angka 8, lalu hasilnya akan ditampilkan.
$b = $b + 8;
echo "\$a = $a, \$b = $b <br>";
Alur prosesnya yaitu variabel $b
, meng-copy nilai yang ada pada variabel $a
, sehingga kedua variabel memiliki niali sendiri-sendiri dan terpisah, seperti yang terlihat dari hasil echo
.
Jika kita ingin variabel $a = $b, maka saat nilai salah satu variabel diubah, otomatis nilai pada variabel lain berubah. Inilah fitur dari assignment by reference. Assignment by reference ini menggunakan operator “=” dan “&”.