Tutorial Belajar PHP Part 18: Pengertian Operand, Operator dan Urutan Operator dalam PHP

Dalam tutorial PHP sebelumnya, kita telah mempelajari 4 tipe data dasar dalam PHP, yaitu Integer, Float, String dan Boolean, serta 1 tipe data bentukan: Array. Dalam beberapa tutorial kedepan, saya akan membahas operasi-operasi yang bisa dilakukan dengan kelima tipe data dasar PHP ini.

Sebagai permulaan, kali ini saya akan mulai dengan membahas pengertian operand, operator dan urutan operator di dalam PHP.


Pengertian Operand dan Operator

Dalam bahasa pemograman, terdapat istilah operand dan operator. Operand adalah nilai asal yang digunakan didalam proses operasi, sedangkan operator adalah instruksi yang diberikan untuk mendapatkan hasil dari proses tersebut.

Contohnya, operasi: 5+2. Angka 5 dan 2 adalah operand, sedangkan tanda tambah (karakter +) adalah operator. Beberapa operator bisa mengubah nilai dari operandnya sendiri, walaupun kebanyakan hanya sebagai penghubung antar operand. Operator di dalam PHP banyak meminjam contoh karakter dari bahasa C dan Perl.


Jenis Operator Berdasarkan Jumlah Operand

Berdasarkan jumlah operand, operator dapat dibedakan menjadi 3, yaitu Operator Unary, Binary dan Ternary.

  • Operator unary adalah operator yang hanya memiliki 1 operand, contohnya karakter – (tanda minus). Tanda minus digunakan membuat sebuah angka menjadi negatif, contohnya: -5, atau karakter + untuk menegaskan nilai positif, contohnya: +5.
  • Operator binary adalah operator yang memiliki 2 operand. Operator jenis ini adalah yang paling banyak digunakan, misalkan 5×2, atau 10/3.
  • Operator Ternary adalah operator yang memiliki 3 operand. Didalam PHP hanya dikenal 1 operator ternary, yaitu operator kondisi (? :). Kita akan mempelajari operator ini dalam tutorial selanjutnya.

Urutan Prioritas Operator dalam PHP

Sama seperti membuat persamaan dalam matematika, operator dalam PHP juga memiliki urutan pemrosesan tersendiri. Misalkan terdapat kode program sebagai berikut:

$hasil1 = $a + $b/$c - $d;

$hasil2 = $a AND $b || $c AND $d;

Program tersebut akan dieksekusi oleh PHP dengan melihat urutan prioritasnya. Urutan prioritas ini menetapkan seberapa "dekat" operator dengan kedua operand-nya. Sebagai contoh, 2+3*5 hasilnya adalah 17, bukan 25.  Hal ini karena operator perkalian (*) memiliki prioritas lebih tinggi daripada operator penambahan (+).

Namun urutan prioritas ini dapat "dipaksa" dengan menggunakan tanda kurung, jika anda ingin menjumlahkan 2 dan 3 terlebih dahulu, maka operasi sebelumnya bisa ditulis menjadi  (2+3)*5 yang hasilnya adalah 25.

Berikut adalah tabel urutan prioritas operator dalam PHP. Operator paling atas lebih diprioritaskan dari pada operator dibawahnya, dan operator yang berada dalam baris yang sama memiliki urutan prioritas yang sama.

Tabel urutan prioritas operator dalam PHP

Dari tabel diatas, terdapat beberapa operator yang berada dalam 1 baris. Bagaimana PHP memproses operator-operator yang memiliki urutan prioritas sama? Di dalam PHP, operator tersebut akan diproses berdasarkan kolom arah proses.

Kolom arah proses (atau dalam manual PHP disebut dengan Associativity) digunakan untuk melihat bagaimana arah proses operator dijalankan.

Misalkan operator kurang (-), di dalam tabel dapat dilihat bahwa operator kurang (-) memiliki arah proses "kiri", sehingga operasi 5 – 3 – 1 oleh PHP diproses dari kiri ke kanan. 5 – 3 – 1 diproses menjadi (5 – 3) – 1, dan hasilnya adalah 1.

Namun di dalam tabel, operator "=" memiliki arah proses "kanan", sehingga $a = $b = $c, akan diproses dari kanan terlebih dahulu, menjadi $a = ($b = $c).

Jika arah proses tersebut "non-arah", berarti operator itu tidak bisa digunakan secara berdampingan. Misalkan 4 < 6 > 2, tidak dapat diproses oleh PHP, namun 1 <= 1 == 1 bisa diproses karena operator == memiliki urutan prioritas lebih rendah daripada <=.

Selain untuk memaksakan urutan prioritas, penggunaan tanda kurung juga akan memudahkan pembacaan program, bahkan ketika tidak diperlukan. Misalkan $a AND $b OR $c, akan lebih mudah dimengerti ketika ditulis menjadi ($a AND $b) OR $c, walaupun sebenarnya operator AND memiliki urutan prioritas lebih tinggi daripada OR.


Didalam tutorial PHP selanjutnya, kita akan membahas operator-operator didalam tabel diatas secara satu persatu beserta contoh penggunaannya.

28 Comments

  1. Rief
    10 Feb 15
    • Andre
      10 Feb 15
  2. Capt_Akromi
    22 Mar 15
  3. lks
    27 Apr 15
    • Andre
      27 Apr 15
  4. Misbahul huda
    29 Jan 16
    • Andre
      29 Jan 16
  5. Singgih
    01 Feb 16
    • Andre
      03 Feb 16
  6. wahyu gunawan
    14 Mar 16
  7. Ambar
    05 Apr 16
    • Andre
      05 Apr 16
  8. Kaisar Ali
    18 Sep 16
  9. ahmad
    15 Oct 16
  10. Ummi
    06 Jan 17
  11. Yoga
    04 Sep 17
  12. KAOS FULL PRINT
    30 Oct 17
    • Andre
      30 Oct 17
  13. HAFIDZ KONVEKSI
    21 Nov 17
    • Andre
      22 Nov 17
  14. Aono
    15 May 18
  15. rika
    11 Dec 18
    • Andre
      12 Dec 18
  16. Nizar
    25 Mar 19
  17. Arki
    26 Mar 19

Add Comment