PHP'de mantıksal operatörler koşullu ifadeleri birleştirmek için kullanılır. Bu operatörler birden fazla koşulu birleştirerek daha karmaşık koşullar oluşturmanıza olanak tanır.
Mantıksal operatörler genellikle if, while ve for döngüleri gibi koşullu ifadelerde , belirli koşullara bağlı olarak program yürütme akışını kontrol etmek için kullanılır.
Aşağıdaki tablo PHP tarafından desteklenen mantıksal operatörleri vurgulamaktadır.
Değişken $a'nın 10'u ve değişken $b'nin 20'yi tuttuğunu varsayalım.
| Operatör | Tanım | Örnek |
|---|---|---|
| Ve | Mantıksal AND operatörü denir. Her iki işlenen de doğruysa koşul doğru olur. | (A ve B) doğrudur |
| veya | Mantıksal VEYA Operatörü denir. İki operanddan herhangi biri sıfır değilse koşul doğru olur. | (A veya B) doğrudur |
| && | Mantıksal VE operatörü denir. VE operatörü hem sol hem de sağ işlenenler doğruysa doğru döndürür. | (A && B) doğrudur |
| || | Mantıksal VEYA Operatörü denir. İki operanddan herhangi biri sıfır değilse koşul doğru olur. | (A || B) doğrudur |
| ! | Mantıksal DEĞİL Operatörü denir. İşleneninin mantıksal durumunu tersine çevirmek için kullanılır. Bir koşul doğruysa Mantıksal DEĞİL operatörü yanlış yapar. | !(A && B) yanlıştır |
Örnek
Aşağıdaki örnek, bu mantıksal operatörlerin PHP'de nasıl kullanılabileceğini gösterir.
Kod:
<?php
$a = 42;
$b = 0;
if ($a && $b) {
echo "TEST1 : Both a and b are true \n";
} else {
echo "TEST1 : Either a or b is false \n";
}
if ($a and $b) {
echo "TEST2 : Both a and b are true \n";
} else {
echo "TEST2 : Either a or b is false \n";
}
if ($a || $b) {
echo "TEST3 : Either a or b is true \n";
} else {
echo "TEST3 : Both a and b are false \n";
}
if ($a or $b) {
echo "TEST4 : Either a or b is true \n";
} else {
echo "TEST4 : Both a and b are false \n";
}
$a = 10;
$b = 20;
if ($a) {
echo "TEST5 : a is true \n";
} else {
echo "TEST5 : a is false \n";
}
if ($b) {
echo "TEST6 : b is true \n";
} else {
echo "TEST6 : b is false \n";
}
if (!$a) {
echo "TEST7 : a is true \n";
} else {
echo "TEST7 : a is false \n";
}
if (!$b) {
echo "TEST8 : b is true \n";
} else {
echo "TEST8 : b is false";
}
?>
Aşağıdaki çıktıyı üretecektir:
TEST1 : Either a or b is false
TEST2 : Either a or b is false
TEST3 : Either a or b is true
TEST4 : Either a or b is true
TEST5 : a is true
TEST6 : b is true
TEST7 : a is false
TEST8 : b is false