PHP Mantıksal Operatörler
Mantıksal operatörler adında anlaşılacağı gibi elde edilen verilerin mantıksal olarak sınanmasında kullanılan işlemcilerdir. Karşılaştırma operatörlerinin PHP programımız içindeki yol ayrımları olduğunu söylemiştim. Verilen değerlere göre akışı belirliyorduk. Mantıksal operatörlerde yolu belirlemizde bir ya da daha fazla etken varsa programın karar vermesinde yardımcı olacaklardır.
İyi, kötü hepimiz kararlar alırız. “Eğer o gelirse ben bu akşam gelmem”. Bu cümlede sadece bir kişiden bahsettik. PHP içinde de bunu kurgularken sadece “if” kalıbını kullanabiliriz. Ancak şartımızı, “Eğer o ve eşi gelirlerse ben gelmem” olarak değiştirdiğimizde, karşımıza kontrol edilmesi gereken iki durum çıkıyor. İşte PHP içinde bu tür sınamaları yaparken if döngüleri içinde mantıksal operatörlerden faydalanırız.
Bildiğiniz gibi matematiksel işlemler belirli bir sıraya göre çözülür. Sırasıyla; parantez içleri, üslü ifadeler, çarpma -bölme ve en son toplama-çıkarma işlemleri yapılır. Birazdan ve/veya operatörlerini incelerken her iki sınama içince 2 adet operatör göreceksiniz. Bir döngü içinde bunları kullanmak istediğinizde PHP önce || ve && işlemlerini yapar sonra or ve and işlemlerini gerçekleştirir. Tek bir olay için ikisinide kullanabilirsiniz.
Mantıksal Operatörler Nelerdir ?
- “||” – “or” veya operatörü
Yukarıdaki bilgiler ışığında her iki ifadeyide kullanabiliriz. Verdiğimiz şartlardan hepsinin ya da herhangi birinin geçerli olması durumunda sonuç “true” (doğru) olacaktır. Hiçbiri doğru değilse “false”(yanlış) olacaktır.
doğru – doğru = doğru
yanlış – doğru = doğru
yanlış – yanlış = yanlış
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php $a = 7; $b = 1; if ($a <= 5 || $b >= 2){ print ("verdiğiniz şartların en az biri doğru"); //$a 5'ten küçük ya da 5'e eşitse bu mesaj gösterilir. //$b 2'den büyük ya da 2'ye eşitse bu mesaj gösterilir. //her ikiside doğruysa yine bu mesaj gösterilir. } else { print ("verdiğiniz şartlardan hiçbiri doğru değil"); //Bu mesajın gösterilmesi için //$a'nın 5'ten büyük , $b'ninde 2'den küçük olması gerekir. } ?> |
Ekran Görüntüsü
verdiğiniz şartlardan hiçbiri doğru değil
———————————————————————————
- “&&” – “and” ve operatörü
Verdiğimiz şartların hepsinin doğru olması durumunda sonuç “true” (doğru), hepsinin ya da bir tanesinin yanlış olması durumunda sonuç “false”(yanlış) olacaktır.
doğru – doğru = doğru
yanlış – doğru = yanlış
yanlış – yanlış = yanlış
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php $a = 3; $b = 5; if ($a <= 5 and $b >= 2){ print ("verdiğiniz şartların hepsi doğru"); //bu mesajın gösterilmesi için //$a'nın 5'ten küçük yada 5'e eşit ve $b'ninde 2'den büyük yada 2'ye eşit olması gerekir. } else { print ("verdiğiniz şartlardan bir tanesi yada hiçbir tanesi doğru değil"); //$a 5'ten büyükse ya da $b 2'den küçükse (ikisinin yanlış olması) //$a 5'ten büyük ve $b 2'ye eşitse (bir tanesinin yanlış olması) //bu mesaj gösterilir. } ?> |
Ekran Görüntüsü
verdiğiniz şartların hepsi doğru
$a 5’ten küçük ve $b 2’den büyük
———————————————————————————
- ! Değil Operatörü
Yukarda kullandığımız operatörlerden sonra “!” işaretini kullanırsak, sonucu tersine çevirmiş oluruz. Bir üstteki örnekte PHP kodu içindeki “and” ifadesini “and!” ifadesiyle değiştirin. Sonucun tam tersine döndüğünü göreceksiniz.
———————————————————————————
- xor Şarta Bağlı Veya
Verdiğimiz şartlardan bir tanesinin doğru olması durumunda sonuç true(doğru) olacak. İyi de aynı işlemi or operatörü ile de yapıyorduk. Tamam haklısınız. xor operatörünün en önemli farkı ise; verdiğimiz şartların hepsinin doğru olması durumunda sonuç false(yanlış) olacaktır. or operatörü kullanmış olsaydık. Hepsinin doğru olması durumunda da sonuç doğru(true) çıkmalıydı.
———————————————————————————
Mantıksal Operatörler tablosu
Umarım aşağıdaki tablo buraya kadar anlattıklarımın bir özeti olur. Bu tabloda verdiğimiz koşulun tüm mantıksal operatörler tarafından nasıl sonuçlandırıldığını görebiliriz.
$a değişkeninin 5’ten küçük, $b değişkeninin 7 ‘den büyük olması şartını inceleyelim.
Benzer Konular
- WordPress Tema Yapısı
- Tema Yapımı (index.php)
- Karşılaştırma Operatörleri
- Mantıksal Operatörler
- Matematik İşlemleri
- Matematiksel Fonksiyonlar
- PHP Değişkenler getype()
- PHP echo komutu
- PHP if else
- PHP Metin İşlemleri
- PHP Metin İşlemleri-2
$a
$b
Operatör
Açıklama
Sonuç
4
8
or
4<5 doğru – 8>7 doğru
doğru
4
6
or
4<5 doğru – 6<7 yanlış
doğru
6
5
or
6>5 yanlış – 5<7 yanlış
yanlış
4
8
and
4<5 doğru – 8>7 doğru
doğru
4
6
and
4<5 doğru – 6<7 yanlış
yanlış
6
5
and
6>5 yanlış – 5<7 yanlış
yanlış
4
8
or!
4<5 doğru – 8>7 doğru
yanlış
6
5
and!
6>5 yanlış – 5<7 yanlış
doğru
4
8
xor
4<5 doğru – 8>7 doğru
yanlış
4
6
xor
4<5 doğru – 6<7 yanlış
doğru
İyi anlatmışsın.
Yorumunuz için teşekkür ederim.