As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com Ekspresi dan Operator As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com
Ekspresi adalah semua yang memiliki nilai Expression/Ekspresi Ekspresi adalah semua yang memiliki nilai
Bentuk paling sederhana dari ekspresi adalah konstanta dan variabel 5 merupakan sebuah ekspresi karena memiliki nilai (konstanta) $a merupakan sebuah ekspresi karena memiliki nilai (setelah proses pemberian nilai terjadi) Operator sama-dengan ( = ) apabila berdiri sendiri, maka tidak memiliki nilai Tetapi bila digabung menjadi $a = 5, maka ekspresi tersebut bernilai 5. Hal ini dapat dibuktikan dengan script berikut <?php echo $a = 5 ?>
Berikut adalah contoh ekspresi yang lebih rumit berbentuk fungsi function gondolo() { return 5; } $b = gondolo(); Pemanggil fungsi gondolo() merupakan sebuah ekspresi dikarenakan fungsi tersebut memiliki nilai yang dikembalikan
Contoh ekspresi yang lain $a = $a + 3 * $b $b = ($a = 5) atau $b = $a = 5 ”um” . ”i”
Statement/Pernyataan Ekspresi dapat dijadikan sebagai sebuah statement Tidak semua ekspresi adalah statement Rumus statement : expr; Ekspresi yang diikuti dengan semicolon/titik-koma adalah sebuah statement
As’ad Djamalilleil http://kampusku.uni.me asad.kom@gmail.com Operator As’ad Djamalilleil http://kampusku.uni.me asad.kom@gmail.com
Aritmatika Operator Contoh Ekspresi Keterangan + $a + $b Penjumlahan - Pengurangan * $a * $b Perkalian / $a / $b Pembagian % $a % $b Modulus
Assignment/Pemberian Nilai = Operator ini berarti bahwa operand di sebelah kiri ( = ) diberikan nilai dari ekspresi di sebelah kanannya $a = ($b = 4) + 5; Nilai $a sekarang sama dengan 9, dan $b diberikan nilai 4
Terdapat operator tambahan berupa “operator gabungan” statement di atas sama dengan statement $a = $a + 5; $b = "Halo "; $b .= "cess!"; sama dengan $b = $b . "cess!";
Bitwise Operator bitwise memungkinkan kita untuk mengubah nilai bit tertentu dalam sebuah integer menjadi on (1) atau off (0)
& | ^ ~ << >> Operator Contoh Nama Hasil & $a & $b And Bit yang posisinya berada dalam kolom yang sama akan dilakukan proses AND | $a | $b Or Bit yang posisinya berada dalam kolom yang sama akan dilakukan proses OR ^ $a ^ $b Xor Bit yang posisinya berada dalam kolom yang sama akan dilakukan proses XOR ~ ~ $a Not Bit 1 diubah menjadi 0 dan sebaliknya << $a << $b Shift left Semua bit pada $a digeser ke kiri sebanyak beberapa kolom sesuai nilai $b >> $a >> $b Shift right Semua bit pada $a digeser ke kanan sebanyak beberapa kolom sesuai nilai $b
Perbandingan == $a == $b sama dengan TRUE jika $a sama dengan $b === Op Contoh Nama Hasil == $a == $b sama dengan TRUE jika $a sama dengan $b === $a === $b identik TRUE jika $a sama dengan $b, dan memiliki tipe yang sama != $a != $b tidak sama dengan TRUE jika $a tidak sama dengan $b <> $a <> $b
TRUE jika $a tidak sama dengan $b, dan tidak memiliki tipe yg sama Op Contoh Nama Hasil !== $a !== $b tidak identik TRUE jika $a tidak sama dengan $b, dan tidak memiliki tipe yg sama < $a < $b lebih kecil dari TRUE jika $a lebih kecil dari $b > $a > $b lebih besar dari TRUE jika $a lebih besar dari $b <= $a <= $b lebih kecil atau sama dengan TRUE jika $a lebih kecil atau sama dengan $b >= $a >= $b lebih besar atau sama dengan TRUE jika $a lebih besar atau sama dengan $b
(expr1) ? (expr2) : (expr3); Conditional ?: (expr1) ? (expr2) : (expr3); Contoh: <?php $a = 4; $b = 7; echo ($a > $b) ? "sama" : "berbeda"; ?>
Error Control PHP mendukung sebuah operator pengendali error, yaitu tanda “at” (@) Ketika ditambahkan ke sebuah ekspresi di PHP, pesan error yang mungkin dihasilkan oleh ekspresi tersebut akan diabaikan
Bandingkan output ketiga script berikut: <?php $baca = file('abc.txt'); ?> $baca = @file('abc.txt'); $baca = @file('abc.txt') or die($php_errormsg);
Execution PHP mendukung sebuah operator yang dapat digunakan untuk mengeksekusi perintah shell (atau diistilahkan dengan DOS prompt), yaitu dengan menggunakan tanda backtick ( ` ) Output dapat disimpan pada variabel atau dapat langsung ditampilkan
$hasil = `dir`; echo "<pre>$hasil</pre>";
Increment/Decrement Op Contoh Nama Efek ++ ++$a Pre-increment Nilai $a ditambah 1, kemudian mengembalikan nilai $a $a++ Post-increment Mengembalikan nilai $a, kemudian nilai $a ditambah 1 -- --$a Pre-decrement Nilai $a dikurang 1, kemudian mengembalikan nilai $a $a-- Post-decrement Mengembalikan nilai $a, kemudian nilai $a dikurang 1
<?php echo "<h3>Postincrement</h3>"; $a = 5; echo "Should be 5: " . $a++ . "<br>\n"; echo "Should be 6: " . $a . "<br>\n"; echo "<h3>Preincrement</h3>"; echo "Should be 6: " . ++$a . "<br>\n"; echo "<h3>Postdecrement</h3>"; echo "Should be 5: " . $a-- . "<br>\n"; echo "Should be 4: " . $a . "<br>\n"; echo "<h3>Predecrement</h3>"; echo "Should be 4: " . --$a . "<br>\n"; ?>
Logika Op Contoh Nama Hasil and $a and $b And TRUE jika $a dan $b TRUE or $a or $b Or TRUE jika salah satunya TRUE xor $a xor $b Xor TRUE jika $a dan $b berkebalikan ! ! $a Not TRUE jika $a tidak TRUE && $a && $b || $a || $b
String Ada 2 operator string : . concatenation / menyambung .= concatenating assignment $a = "Halo "; $b = $a . "dunia"; sekarang $b berisi “Halo dunia“ $a .= "dunia"; sekarang $a berisi “Halo dunia“
Operator Precedence Associativity Operators kiri , or xor and kanan print = += -= *= /= .= %= &= |= ^= ~= <<= >>= ? : || && |
kiri ^ & non-associative == != === !== < <= > >= << >> + - . * / % kanan ! ~ ++ -- (int) (double) (string) (array) (object) @ [ new