/* */
MEDIA PENDIDIKAN dan PEMBELAJARAN Ilmu Mantiq (Logika): Kaidah Berfikir yang Memelihara Akal, agar tidak terjadi Kerancuan dalam Berfikir.

Friday, September 30, 2011

Operator PHP

Operator digunakan untuk melakukan suatu operasi. Secara umum , operasi pada PHP dapat dikelompokkan pada 6 jenis , yaitu :

1 Operator Aritmatika

Operator aritmatika adalah operator yang digunakan untuk melakukan fungsi matematika. Operator aritmatika dalam PHP :

Operator

Operasi
Penggunaan
+
Penjumlahan
$a+$b
-
Pengurangan
$a-$b
*
Perkalian
$a*$b
/
Pembagian
$a/$b
%
Modulus
$a%$b
Modulus merupakan operasi sisa bagi. Contoh :
12 % 2 = 0 ( 12 dibagi 2 sisanya 0 )
11 % 2 = 1 ( 11 dibagi 2 sisanya 1 )
2 Operator Assignment
Operator ini digunakan untuk memberikan/mendefinisikan nilai ke sebuah variable.
Operator
Analogi
Contoh
=
$a = $a
$a = 3
+=
$a = $a + 1
$a += 1
-=
$a = $a - 1
$a -= 1
*=
$a = $a * 1
$a *= 2
/=
$a = $a /1
$a /= 2
 3 Operator String
            Hanya ada satu operator string, yaitu operator concatenation ( . ).
<?php
$a=”Hallo”;
$b= $a . Selamat Datang di PHP”;  
//$b berisikan “Hallo Selamat datang di PHP”
?>

4 Operator Bitwise

Operator bitwise dapat digunakan untuk membuat bit tertentu dari suatu integer menjadi 1 atau 0.
Contoh
Nama
Hasil
Contoh
 
$a & $b
And
Bit yang bernilai 1 pada $a dan $b akan diset 1
11 & 13 = 9

$a | $b
Or
Bit yang bernilai 1 pada $a atau $b akan diset 1
11 | 13 = 15

$a ^ $b
Xor
Bit yang bernilai 1 pada $a atau $b tetapi tidak pada keduanya akan diset 1
11 ^ 13 = 6

~ $a
Not
Bit yang bernilai 1 pada $a akan diset 0, dan sebaliknya.
~11 = 12

$a << $b
Shift Left
Geser bit $a sebanyak $b langkah ke kiri (setiap langkah berarti “kalikan dengan dua”).
11 << 2 = 2

$a >> $b
Shift right
Geser bit $a sebanyak $b langkah ke kanan (setiap langkah berarti “bagikan dengan dua”).
11 >> 2 = 44


5 Operator Perbandingan
Operator ini digunakan untuk melakukan suatu operasi perbandingan dan biasanya diletakkan di struktur kontrol program seperti if, elseif.
Contoh
Nama
Hasil
$a > $b
Lebih dari
True jika $a lebih besar dari $b
$a <= $b
Kurang dari atau sama dengan
True jika $a lebih kecil dari $b atau $a sama dengan $b
Kurang dari
True jika $a lebih kecil dari $b
$a >= $b
Lebih besar atau sama dengan
True jika $a lebih besar dari $b atau $a sama dengan $b
$a == $b
Sama dengan
True jika $a sama dengan $b
$a != $b
Tidak sama dengan
True jika $a tidak sama dengan $b
Operator perbandingan lainnya adalah operator trinary “?:” yang memiliki bentuk :
(ekspresi) ? (jika benar) : (jika salah);
Hasil dari suatu perbandingan selalu antara nilai true atau false saja. True jika perbandingannya benar dan sebaliknya akan bernilai salah.
6 Operator Logika
Operator ini digunakan untuk melakukan suatu operasi logika.

Contoh
Nama
Hasil
$a and $b
$a && $b
And
True jika $a sama dengan $b
$a or $b
$a || $b
Or
True jika salah satu  $a atau $b adalah benar
$a xor $b
Exclusive Or
True jika salah satu $a atau $b adalah benar dan tidak keduanya
!$a
Not
True jika $a tidak benar

7 Operator Decrement dan Increment
Operator ini diadopsi dari bahasa C++. Digunakan untuk menambahkan atau mengurangi nilai suatu variable dengan 1.
Operator
Keterangan
Contoh
++$a
Pre-increment
$a = ++$b
--$a
Pre-decrement
$a = --$b
$a++
Post-Increment
$a = $b++
$a--
Post-decrement
$a = $b--
Maksud pre adalah nilai dari suatu variable ditambahkan/dikurangi dulu dengan satu baru operasi lainnya dijalankan. Sedangkan post adalah operasi dilaksanakan dulu , kemudian setelah semua operasi selesai baru nilai dari variable itu ditambahkan/dikurangi dengan satu
Contoh:
$a = ++$b ; // $a = 11 dan $b = 11
$a = --$b ; // $a = 10 dan $b = 10
$a = $b++ ; // $a = 10 dan $b = 11
$a = $b-- ; // $a = 11 dan $b=10
$a = $b-- + 3 ; // $a=13 dan $b=9
$a = $b++ + ++$b ; // $a= 20 dan $b = 11
8 Operator Presendence
Aturan ini digunakan untuk menentukan urutan atau level dari operator , dimana operator dengan level lebih tinggi akan dikerjakan lebih dahulu.
Operator
Associativity
New
Non-associative
[
Right
! ~ ++ -- (int) (double)(string)(array)(object) @
Right
* /
Left
+ - .
Left
<< >>
Left
< <= > >=
Non-associative
== != ===
Non-associative
&
Left
^
Left
|
Left
&&
Left
||
Left
?:
Left
= += -= *= /= .= %= &= |=^= ~= <<= >>=
Left
Print
Right
And
Left
Xor
Left
Or
Left
,
Left





/*
*/