В този урок ще научим за PHP операторите. Ние обяснихме всички оператори и техните области на използване в PHP напълно и подробно, с примери.
Знаците или думите, които извършват операции между една или повече стойности, се наричат оператори или оператори. Английската дума за оператор е оператор и е известна като оператор на турски. Някои източници обаче го споменават като оператор. И двете носят едно и също значение.
PHP оператори
PHP аритметични оператори
PHP аритметичните оператори се използват с числови стойности за извършване на общи аритметични операции като събиране, изваждане, умножение.
| оператор | име | пример |
| + | Допълнение | $a + $b |
| - | Изваждане | $a - $b |
| * | Умножение | $a * $b |
| / | разделение | $a / $b |
| % | Модул (модул) | $a % $b |
Примери за PHP аритметични оператори
Събираме 2 стойности с оператора за събиране. В този пример използвахме оператора за добавяне на php:
echo 2+4; // Çıktı: 6Изваждаме една стойност от друга с оператора за изваждане. В този пример използвахме оператора за изваждане на php:
echo 5-2; // Çıktı: 3Разделяме една стойност на друга стойност с оператора за деление. В този пример използвахме оператора за разделяне на php:
echo 6/2; // Çıktı: 3Ние умножаваме една стойност по друга стойност с оператора за умножение. В този пример използвахме оператора за умножение на php:
echo 5*2; // Çıktı: 10С оператора на модул намираме остатъка, когато една стойност се раздели на друга стойност. В този пример използвахме оператора на php модула:
echo 7%2; // Çıktı: 1PHP оператори за присвояване
PHP операторите за присвояване се използват за присвояване на стойности.
| оператор | име | пример |
| = | Възлагане | $a = $b |
| += | Съберете и изхвърлете | $a +=4 |
| -= | Изваждане и присвояване | $a -=4 |
| *= | Разделяне и присвояване | $a /=4 |
| *= | Умножете и присвоете | $a *=4 |
| %= | Модулиране и присвояване | $a%=4 |
Примери за PHP оператор за присвояване
Присвоихме стойността отдясно на левия операнд с оператора за равенство.
$a = 20;Присвоихме сумата от лявата и дясната променлива на променливата с оператора за добавяне и присвояване.
$a = 10;
$b = 15;
$a += $b; // $a değişkeninin değeri 25
// Üst satırdaki ifade ile $a = $a + $b ifadesi aynı.С оператора за изваждане и присвояване ние присвоихме резултата от изваждането на стойността на променливата отдясно от стойността на променливата отляво на променливата.
$a = 20;
$b = 10;
$a -= $b; // $a değişkeninin değeri 10
// Üst satırdaki ifade ile $a = $a - $b ifadesi aynı.С оператора за разделяне и присвояване ние присвоихме на променливата резултата от това колко пъти стойността на променливата отляво може да бъде разделена на стойността на променливата отдясно.
$a = 12;
$b = 4;
$a /= $b; // $a değişkeninin değeri 3
// Üst satırdaki ifade ile $a = $a / $b ifadesi aynı.С оператора за умножение и присвояване присвоихме резултата от умножаването на две стойности на променлива на променливата.
$a = 2;
$b = 2;
$a *= $b; // $a değişkeninin değeri 4
// Üst satırdaki ifade ile $a = $a * $b ifadesi aynı.Използвайки операторите за модул и присвояване, присвоихме на променливата остатъка, когато стойността на променливата отляво беше разделена на стойността на променливата отдясно.
$a = 8;
$b = 3;
$a %= $b; // $a değişkeninin değeri 2
// Üst satırdaki ifade ile $a = $a % $b ifadesi aynı.PHP оператори за сравнение
PHP операторите за сравнение се използват за сравняване на две стойности.
| оператор | име | пример |
| == | Равен | $a == $b |
| === | еквивалент | $a === $b |
| != | Не е равно (не е равно) | $a != $b |
| !== | Не е идентичен | $a !== $b |
| <> | Не е равно (не е равно) | $a <> $b |
| > | По-голямо от | $a > $b |
| < | По-малко от | $a < $b |
| >= | По-голямо или равно на | $a >= $b |
| <= | По-малко или равно на (по-малко или равно на) | $a <= $b |
PHP примери за оператори за сравнение
Проверихме равенството на две стойности с оператора за равенство.
$a = 4;
$b = 2;
if ($a == $b) {
echo "A, B'ye eşittir";
} else {
echo "A, B'ye eşit değildir";
}
// Çıktı: A, B'ye eşit değildirПроверихме еквивалентността на две стойности с идентичен оператор.
$a = 4;
$b = '4';
if ($a === $b) {
echo "A, B'ye denktir";
} else {
echo "A, B'ye denk değildir";
}
// Çıktı: A, B'ye denk değildirПроверихме неравенството на две стойности с оператора not equal.
$a = 4;
$b = 3;
if ($a != $b) {
echo "A, B'ye eşit değildir";
} else {
echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildirПроверихме неравенството на две стойности с неидентичен оператор.
$a = 4;
$b = '4';
if ($a !== $b) {
echo "A, B'ye denk değildir";
} else {
echo "A, B'ye denktir";
}
// Çıktı: A, B'ye denk değildirПроверихме неравенството на две стойности с оператора not equal.
$a = 4;
$b = 2;
if ($a <> $b) {
echo "A, B'ye eşit değildir";
} else {
echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildirПроверихме дали стойността отляво е по-голяма от стойността отдясно с оператора по-голямо от.
$a = 4;
$b = 2;
if ($a > $b) {
echo "A, B'den daha büyüktür";
} else {
echo "A, B'den daha büyük değildir";
}
// Çıktı: A, B'den daha büyüktürПроверихме дали стойността отляво е по-малка от стойността отдясно с оператора по-малко от.
$a = 2;
$b = 4;
if ($a < $b) {
echo "A, B'den daha küçüktür";
} else {
echo "A, B'den daha küçük değildir";
}
// Çıktı: A, B'den daha küçüktürПроверихме дали стойността отляво е по-голяма или равна на стойността отдясно с оператора по-голямо или равно на.
$a = 4;
$b = 2;
if ($a >= $b) {
echo "A, B'den daha büyüktür veya eşittir";
} else {
echo "A, B'den daha büyük veya eşit değildir";
}
// Çıktı: A, B'den daha büyüktür veya eşittirПроверихме дали стойността отляво е по-малка или равна на стойността отдясно с оператора по-малко или равно на.
$a = 2;
$b = 4;
if ($a <= $b) {
echo "A, B'den daha küçüktür veya eşittir";
} else {
echo "A, B'den daha küçük veya eşit değildir";
}
// Çıktı: A, B'den daha küçüktür veya eşittirОператори за увеличаване/намаляване на PHP
PHP операторите за нарастване се използват за увеличаване на стойността на променлива. PHP операторите за намаляване се използват за намаляване на стойността на променлива.
| оператор | име |
| ++$i | Увеличаване преди (предварително увеличение) |
| $i++ | След увеличение (пост-инкремент) |
| --$i | Намаляване преди (предварително намаляване) |
| $i-- | След намаляване (след намаляване) |
PHP инкремент декремент оператор Примери
Операторът за предварително нарастване първо увеличава стойността на променлива $i и след това връща променливата $i.
$i = 10;
echo ++$i; // Çıktı: 11След това операторът след нарастване връща променлива $i, след което увеличава стойността на променлива $i.
$i = 10;
echo $i++; // Çıktı: 10Операторът за предварително намаляване първо намалява стойността на променлива $i и след това връща променливата $i.
$i = 10;
echo --$i; // Çıktı: 9След това операторът след декремент връща променливата $i, след което намалява стойността на променливата $i.
$i = 10;
echo ++$i; // Çıktı: 10PHP логически оператори
Логическите оператори на PHP се използват за комбиниране на условни изрази.
| оператор | име | пример |
| клетва | и (и) | $a и $b |
| или | или (или) | $a или $b |
| xor | xor | $a xили $b |
| && | и (и) | $a && $b |
| || | или (или) | $a || $b |
| ! | не (забележка) | $a! $b |
Примери за логически оператори на PHP
И операторът (и) връща true, ако условието в $a и $b е изпълнено.
$a = 100;
$b = 50;
if ($a === 100 and $b === 50) {
echo "A, 100'e denktir ve B, 50'e denktir";
}
// Çıktı: A, 100'e denktir ve B, 50'e denktirОператорът или (или) връща истина, ако условието в $a или $b е изпълнено.
$a = 100;
$b = 50;
if ($a === 100 or $b === 75) {
echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktirИ операторът (и) връща true, ако условието в $a и $b е изпълнено.
$a = 100;
$b = 50;
if ($a === 100 && $b === 50) {
echo "A, 100'e denktir ve B, 50'e denktir";
}
// Çıktı: A, 100'e denktir ve B, 50'e denktirОператорът или (или) връща истина, ако условието в $a или $b е изпълнено.
$a = 100;
$b = 50;
if ($a === 100 || $b === 75) {
echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktirОператорът xor връща true само ако условието в $a или $b е изпълнено.
$a = 100;
$b = 50;
if ($a === 100 xor $b === 75) {
echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktirОператорът not връща true, ако условието в $a не е изпълнено.
$x = 50;
if ($x !== 75) {
echo "X, 75'e denk değildir";
}
// Çıktı: X, 75'e denk değildirPHP текстови оператори (низови оператори)
PHP има 2 оператора, предназначени за текстове:
Оператор за конкатенация и оператор за присвояване на конкатенация.
| оператор | име | пример |
| . | Оператор за конкатенация | $a. $b |
| .= | Оператор за присвояване на конкатенация | $a .= $b |
Примери за текстови оператори на PHP
Операторът за конкатенация комбинира две данни. В примера по-долу комбинирахме данните от променливите $a и $b и ги отпечатахме.
$a = "Hello ";
$b = " World!";
echo $a . $b;
// Çıktı: Hello World!Операторът за присвояване на конкатенация добавя вторите данни до първите данни. В примера по-долу добавихме данните на променлива $b до данните на променлива $a и отпечатахме променливата $a.
$a = "Hello ";
$b = " World!";
$a .= $b;
echo $a;
// Çıktı: Hello World!PHP оператори за масиви
Операторите за масиви в PHP се използват за сравняване на масиви.
| оператор | име | пример |
| + | Съюзен оператор (съюз) | $a + $b |
| == | Оператор за равенство (равенство) | $a == $b |
| === | Оператор за еквивалентност (идентичност) | $a === $b |
| != | Оператор на неравенство (неравенство) | $a != $b |
| <> | Оператор на неравенство (неравенство) | $a <> $b |
| !== | Оператор на дисбаланс (без идентичност) | $a !== $b |
Примери за PHP масив оператор
Операторът за обединение комбинира масиви.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
print_r($a + $b);
// Çıktı: Array ( [a] => kırmızı [b] => mavi [c] => yeşil [d] => sarı )Операторът за равенство (равенство) осигурява контрол на равенството в масиви. Можем да разберем дали данните от два масива са равни или не с оператора за равенство.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
if ($a == $b) {
echo "A, B'ye eşittir";
} else {
echo "A, B'ye eşit değildir";
}
// Çıktı: A, B'ye eşit değildirОператорът за идентичност осигурява контрол на равенството в масиви. Можем да разберем дали данните от два масива са еквивалентни с оператора за еквивалентност.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
if ($a === $b) {
echo "A, B'ye denktir";
} else {
echo "A, B'ye denk değildir";
}
// Çıktı: A, B'ye denk değildirОператорът за неравенство (неравенство) осигурява контрол на неравенството в масиви. Можем да научим, че данните от два масива не са равни с оператора за неравенство.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
if ($a != $b) {
echo "A, B'ye eşit değildir";
} else {
echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildirОператорът за неравенство (неравенство) осигурява контрол на неравенството в масиви. Можем да научим, че данните от два масива не са равни с оператора за неравенство.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
if ($a $b) {
echo "A, B'ye eşit değildir";
} else {
echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildirОператорът без идентичност осигурява контрол без идентичност в масиви. Можем да разберем, че данните от два масива не са еквивалентни с оператора за неравенство.
$a = array('a' => 'kırmızı', 'b' => 'mavi');
$b = array('c' => 'yeşil', 'd' => 'sarı');
if ($a !== $b) {
echo "A, B'ye denk değildir";
} else {
echo "A, B'ye denktir";
}
// Çıktı: A, B'ye denk değildirОператори за условно присвояване на PHP
Операторите за условно присвояване на PHP се използват за присвояване на стойност въз основа на условия.
| оператор | име | пример |
| ?: | Тернарен оператор (троичен) | $a = израз1? израз2 : израз3 |
| ?? | Оператор за нулево обединяване (нулево обединяване) | $a = израз1 ?? израз2 |
PHP примери за оператор за условно присвояване
Троичният оператор присвоява условни данни. В примера по-долу присвоихме данните „not logged in“ на променливата $status, ако празното ($user) условие връща true, и „logged in“, ако връща false.
// Örnek 1:
$user = "Onur Özden";
echo $status = (empty($user)) ? "giriş yapılmadı" : "giriş yapıldı";
// empty($user) koşulu false ise, $status değişkenine "giriş yapıldı" değerini ata, true ise $status değişkenine "giriş yapılmadı" değerini ata.
// Örnek 2:
$user = "Onur Özden";
echo $status = (empty($user)) ? 0 : 1;
// empty($user) = false ise, $status değişkenine 0 değerini ata, true ise $status değişkenine 1 değerini ata.Операторът за нулево обединяване присвоява условни данни. Ако първите данни съществуват и не са null, стойността на $a е първите данни. Ако първите данни не съществуват или са нулеви, стойността на $a са вторите данни. В примера по-долу присвоихме данните „not logged in“ на променливата $status, ако празното ($user) условие връща true, и „logged in“, ако връща false.
// $_GET['user'] varsa ve null değilse $user değişkenine değer olarak atanır, $_GET['user'] yoksa veya null ise $user değişkenine "giriş yapılmadı" metni değer olarak tanır.
echo $user = $_GET['user'] ?? 'giriş yapılmadı';
// Çıktı: giriş yapılmadı
// $car değişkeni varsa ve null değilse $car değişkenine $car değişkeninin değeri atanır, $car değişkeni yoksa veya null ise $car değişkenine 'BMW' değeri atanır.
echo $color = $color ?? 'BMW';
// Çıktı: BMWПриоритет на PHP оператор
Примери за приоритет на оператора
Както в математиката, операторите в PHP имат някои приоритетни стойности. Нека разберем това с пример.
echo 3 + 5 * 2; // Çıktı: 13В горния процес резултатът ще бъде 13. Тъй като умножението има приоритет пред събирането. Следователно първо се извършва умножение и след това събиране. Въпреки това е възможно да се намеси в приоритета на обработката.
echo (3 + 5) * 2; // Çıktı: 16В горния процес резултатът ще бъде 16. Тъй като приоритизирахме процеса на добавяне, като го поставихме в скоби. Следователно първо се извършва събиране, след това умножение. Ето как се намесихме в приоритета на транзакциите.
Таблица с приоритети на операторите
В таблицата по-долу операторите са изброени по ред от най-висок до най-нисък приоритет. Операторите на една и съща линия имат еднакъв приоритет и редът, в който ще бъдат обработени, се решава по време на оценката. По-долу сме включили таблицата с приоритет на всички оператори в PHP.
| приписване | оператори | |
|---|---|---|
| (няма) | clone new | |
| (няма) | ** | |
| отдясно | + - ++ -- ~ (int) (float) (string) (array) (object) (bool) @ | |
| отляво | instanceof | |
| (няма) | ! | |
| отляво | * / % | |
| отляво | + - . | |
| отляво | << >> | |
| отляво | . | |
| без посока | < <= > >= | |
| без посока | == != === !== <> <=> | |
| наляво | & | |
| отляво | ^ | |
| отляво | | | |
| отляво | && | |
| отляво | || | |
| точно | ?? | |
| без посока | ? : | |
| отдясно | = += -= *= **= /= .= %= &= |= ^= <<= >>= ??= | |
| (няма) | yield from | |
| (няма) | yield | |
| (няма) | print | |
| отляво | and | |
| отляво | xor | |
| отляво | or |
Тази таблица е взета от php.net. източник: https://www.php.net/manual/tr/language.operators.precedence.php



