PHP Operators

Operators are symbols that instruct the PHP processor to carry out specific tasks. The addition (+) symbol, for example, instructs PHP to combine two variables or values, while the greater-than (>) symbol instructs PHP to compare two values.


The operators used in PHP are defined in the following lists:

Arithmetic Operators in PHP

Addition, subtraction, multiplication, and other basic arithmetical operations are performed using the arithmetic operators. The following is a complete list of PHP's arithmetic operators:


Operator Description Example Result
+ Addition $x + $y Sum of $x and $y
- Subtraction $x - $y Difference of $x and $y
* Multiplication $x * $y Product of $x and $y
/ Division $x / $y Quotient of $x and $y
% Modulus $x % $y Remainder of $x divided by $y


These arithmetic operators are demonstrated in the following example:


<?php
  $x = 10;
  $y = 4;
  echo($x + $y); // 0utputs: 14
  echo($x - $y); // 0utputs: 6
  echo($x * $y); // 0utputs: 40
  echo($x / $y); // 0utputs: 2.5
  echo($x % $y); // 0utputs: 2
?>



PHP Assignment Operator


<?php
  $x = 10;
  echo $x; // Outputs: 10

  $x = 20;
  $x += 30;
  echo $x; // Outputs: 50

  $x = 50;
  $x -= 20;
  echo $x; // Outputs: 30

  $x = 5;
  $x *= 25;
  echo $x; // Outputs: 125

  $x = 50;
  $x /= 10;
  echo $x; // Outputs: 5

  $x = 100;
  $x %= 15;
  echo $x; // Outputs: 10
?>



Comparison Operator

The following example shows how to use the echo statement to view variables:


<?php
  $x = 25;
  $y = 35;
  $z = "25";
  var_dump($x == $z);  // Outputs: boolean true
  var_dump($x === $z); // Outputs: boolean false
  var_dump($x != $y);  // Outputs: boolean true
  var_dump($x !== $z); // Outputs: boolean true
  var_dump($x < $y);   // Outputs: boolean true
  var_dump($x > $y);   // Outputs: boolean false
  var_dump($x <= $y);  // Outputs: boolean true
  var_dump($x >= $y);  // Outputs: boolean false
?>



Incrementing and Decrementing Operators


<?php
  $x = 10;
  echo ++$x; // Outputs: 11
  echo $x;   // Outputs: 11

  $x = 10;
  echo $x++; // Outputs: 10
  echo $x;   // Outputs: 11

  $x = 10;
  echo --$x; // Outputs: 9
  echo $x;   // Outputs: 9

  $x = 10;
  echo $x--; // Outputs: 10
  echo $x;   // Outputs: 9
?>



Logical Operators


<?php
  $year = 2014;
  // Leap years are
  // divisible by 400
  // or by 4 but not 100
  if(($year % 400 == 0) || (($year % 100 != 0) && ($year % 4 == 0))){
  echo "$year is a leap year.";
  } else{
  echo "$year is not a leap year.";
  }
?>



String Operators


<?php
  $x = "Hello";
  $y = " World!";
  echo $x . $y; // Outputs: Hello World!

  $x .= $y;
  echo $x; // Outputs: Hello World!
?>



Array Operators


<?php
  $x = array("a" => "Red", "b" => "Green", "c" => "Blue");
  $y = array("u" => "Yellow", "v" => "Orange", "w" => "Pink");
  $z = $x + $y; // Union of $x and $y
  var_dump($z);
  var_dump($x == $y);   // Outputs: boolean false
  var_dump($x === $y);  // Outputs: boolean false
  var_dump($x != $y);   // Outputs: boolean true
  var_dump($x <> $y);   // Outputs: boolean true
  var_dump($x !== $y);  // Outputs: boolean true
?>



Spaceship Operators


<?php
  // Comparing Integers
  echo 1 <=> 1; // Outputs: 0
  echo 1 <=> 2; // Outputs: -1
  echo 2 <=> 1; // Outputs: 1

  // Comparing Floats
  echo 1.5 <=> 1.5; // Outputs: 0
  echo 1.5 <=> 2.5; // Outputs: -1
  echo 2.5 <=> 1.5; // Outputs: 1

  // Comparing Strings
  echo "x" <=> "x"; // Outputs: 0
  echo "x" <=> "y"; // Outputs: -1
  echo "y" <=> "x"; // Outputs: 1
?>