Операторы — это символы, которые говорят процессору PHP выполнить определенные действия. Например, символ сложения (+
) — это оператор, который сообщает PHP о необходимости добавления двух переменных или значений, а символ «больше» (>
) — это оператор, который сообщает PHP о необходимости сравнения двух значений.
В следующих примерах описаны различные операторы, используемые в PHP.
Арифметические операторы PHP
Арифметические операторы используются для выполнения общих арифметических операций, таких как сложение, вычитание, умножение и т. д. Вот полный список арифметических операторов PHP:
Оператор | Описание | Пример | Результат |
---|---|---|---|
+ |
Сложение | $x + $y |
Сумма $x и $y |
- |
Вычитание | $x - $y |
Разница $x и $y. |
* |
Умножение | $x * $y |
Умножение $x на $y. |
/ |
Деление | $x / $y |
Деление $x на $y |
% |
Деление по модулю | $x % $y |
Остаток $x деленный на $y |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = 10;
$y = 4;
echo($x + $y); // Вывод: 14
echo($x - $y); // Вывод: 6
echo($x * $y); // Вывод: 40
echo($x / $y); // Вывод: 2.5
echo($x % $y); // Вывод: 2
?>
Операторы присваивания PHP
Следующий пример покажет вам эти операторы присваивания в действии:
Оператор | Описание | Пример | Тоже самое |
---|---|---|---|
= |
Присвоить | $x = $y |
$x = $y |
+= |
Добавить и присвоить | $x += $y |
$x = $x + $y |
-= |
Вычесть и присвоить | $x -= $y |
$x = $x - $y |
*= |
Умножить и присвоить | $x *= $y |
$x = $x * $y |
/= |
Разделить и присвоить частное | $x /= $y |
$x = $x / $y |
%= |
Разделить и присвоить модуль | $x %= $y |
$x = $x % $y |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = 10;
echo $x; // Вывод: 10
$x = 20;
$x += 30;
echo $x; // Вывод: 50
$x = 50;
$x -= 20;
Операторы сравнения PHP
Операторы сравнения используются для сравнения двух значений логическим способом.
Оператор | Имя | Пример | Результат |
---|---|---|---|
== |
Равенство | $x == $y |
Истинно, если $x равно $y |
=== |
Строгое равенство | $x === $y |
Верно, если $x равно $y, и они одного типа |
!= |
Не равно | $x != $y |
Истинно, если $x не равно $y |
<> |
Не равно | $x <> $y |
Истинно, если $x не равно $y |
!== |
Не строгое равенство | $x !== $y |
Истинно, если $x не равно $y или они не одного типа |
< |
Меньше, чем | $x < $y |
Истинно, если $x меньше $y |
> |
Больше, чем | $x > $y |
Истинно, если $x больше $y |
>= |
Больше или равно | $x >= $y |
Истинно, если $x больше или равно $y |
<= |
Меньше или равно | $x <= $y |
Истинно, если $x меньше или равно $y |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = 25;
$y = 35;
$z = "25";
var_dump($x == $z); // Вывод: boolean true
var_dump($x === $z); // Вывод: boolean false
var_dump($x != $y); // Вывод: boolean true
var_dump($x !== $z); // Вывод: boolean true
var_dump($x < $y); // Вывод: boolean true
var_dump($x > $y); // Вывод: boolean false
var_dump($x <= $y); // Вывод: boolean true
var_dump($x >= $y); // Вывод: boolean false
?>
Операторы увеличения и уменьшения PHP
Операторы увеличения / уменьшения используются для увеличения / уменьшения значения переменной.
Оператор | Название | Эффект |
---|---|---|
++$x |
Pre-increment | Увеличивает $x на единицу, затем возвращает $x |
$x++ |
Post-increment | Возвращает $x, затем увеличивает $x на единицу |
--$x |
Pre-decrement | Уменьшает $x на единицу, затем возвращает $x |
$x-- |
Post-decrement | Возвращает $x, затем уменьшает $x на единицу |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = 10;
echo ++$x; // Вывод: 11
echo $x; // Вывод: 11
$x = 10;
echo $x++; // Вывод: 10
echo $x; // Вывод: 11
$x = 10;
echo --$x; // Вывод: 9
echo $x; // Вывод: 9
$x = 10;
echo $x--; // Вывод: 10
echo $x; // Вывод: 9
?>
Логические операторы PHP
Логические операторы обычно используются для объединения условных операторов.
Оператор | Имя | Пример | Результат |
---|---|---|---|
and |
И | $x и $y |
Верно, если $x и $y верны |
or |
Или | $x or $y |
Истинно, если либо $x, либо $y истинно |
xor |
X или | $x xor $y |
Верно, если либо $x, либо $y истинно, но не оба |
&& |
И | $x && $y |
Верно, если $x и $y верны |
|| |
Или | $x || $y |
Истинно, если истинно значение $x или $y |
! |
Нет | !$x |
Верно, если $x неверно |
Следующий пример покажет вам эти операторы в действии:
<?php
$year = 2014;
// Високосные годы делятся на 400 или на 4, но не на 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.";
}
?>
Строковые операторы PHP
Есть два оператора, специально разработанные для строк.
Оператор | Описание | Пример | Результат |
---|---|---|---|
. |
Конкатенация | $str1 . $str2 |
Объединение $str1 и $str2 |
.= |
Присваивание конкатенации | $str1 .= $str2 |
Добавляет $str2 к $str1 |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = "Hello";
$y = " World!";
echo $x . $y; // Вывод: Hello World!
$x .= $y;
echo $x; // Вывод: Hello World!
?>
Операторы массивов PHP
Операторы массива используются для сравнения массивов:
Оператор | Название | Пример | Результат |
---|---|---|---|
+ |
Объединение | $x + $y |
Объединение $x и $y |
== |
Равенство | $x == $y |
Истинно, если $x и $y имеют одинаковые пары ключ / значение |
=== |
Тождественность | $x === $y |
Истинно, если $x и $y имеют одинаковые пары ключ / значение в одинаковом порядке и одного типа. |
!= |
Неравенство | $x != $y |
Истинно, если $x не равно $y |
<> |
Неравенство | $x <> $y |
Истинно, если $x не равно $y |
!== |
Не-тождественность | $x !== $y |
Истинно, если $x не совпадает с $y |
Следующий пример покажет вам эти операторы в действии:
<?php
$x = array("a" => "Red", "b" => "Green", "c" => "Blue");
$y = array("u" => "Yellow", "v" => "Orange", "w" => "Pink");
$z = $x + $y; // Объединение $x и $y
var_dump($z);
var_dump($x == $y); // Вывод: boolean false
var_dump($x === $y); // Вывод: boolean false
var_dump($x != $y); // Вывод: boolean true
var_dump($x <> $y); // Вывод: boolean true
var_dump($x !== $y); // Вывод: boolean true
?>
Операторы «космического корабля» PHP
PHP 7 представляет новый оператор «космического корабля» (<=>
), который можно использовать для сравнения двух выражений. Он также известен как комбинированный оператор сравнения.
Оператор космического корабля возвращает 0
, если оба операнда равны; 1
, если левый больше; -1
, если больше правый. В основном он обеспечивает трехстороннее сравнение, как показано в следующей таблице:
Оператор | <=> Эквивалент |
---|---|
$x < $y |
($x <=> $y) === -1 |
$x <= $y |
($x <=> $y) === -1 || ($x <=> $y) === 0 |
$x == $y |
($x <=> $y) === 0 |
$x != $y |
($x <=> $y) !== 0 |
$x >= $y |
($x <=> $y) === 1 || ($x <=> $y) === 0 |
$x > $y |
($x <=> $y) === 1 |
Следующий пример покажет вам, как на самом деле работает оператор космического корабля:
<?php
// Сравнение целых чисел
echo 1 <=> 1; // Вывод: 0
echo 1 <=> 2; // Вывод: -1
echo 2 <=> 1; // Вывод: 1
// Сравнение
echo 1.5 <=> 1.5; // Вывод: 0
echo 1.5 <=> 2.5; // Вывод: -1
echo 2.5 <=> 1.5; // Вывод: 1
// Сравнение строк
echo "x" <=> "x"; // Вывод: 0
echo "x" <=> "y"; // Вывод: -1
echo "y" <=> "x"; // Вывод: 1
?>