Logical Operators Part 1
Coddy'nin PHP Journey'sinin Temeller bölümünün bir parçası — ders 25 / 71.
Mantıksal operatörler birden fazla boolean ifadesini birleştirerek tek bir ifadeye dönüştürmenizi sağlar. Birden fazla koşulu aynı anda kontrol etmeniz gerektiğinde bu esastır.
VE operatörü (&&) yalnızca her iki koşul da doğru olduğunda true döndürür:
<?php
$age = 25;
$hasLicense = true;
$canDrive = $age >= 18 && $hasLicense;
var_dump($canDrive); // bool(true)
$age = 16;
$canDrive = $age >= 18 && $hasLicense;
var_dump($canDrive); // bool(false) - yaş koşulu başarısız
?>OR operatörü (||), en az biri koşul doğru olduğunda true döndürür:
<?php
$isWeekend = true;
$isHoliday = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(true) - hafta sonu true
$isWeekend = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(false) - her ikisi de false
?>&&'yi "her ikisi de doğru olmalı" olarak düşünün ve ||'yi "en az biri doğru olmalı" olarak. Gelecek derste, NOT operatörü ve birden fazla mantıksal operatörü nasıl birleştireceğinizi öğreneceksiniz.
Görev
KolayGirişten dört değer oku: bir tamsayı age, bir dize hasTicket (ya "true" ya da "false"), bir dize isMember (ya "true" ya da "false"), ve bir dize hasInvitation (ya "true" ya da "false").
Dize değerlerini "true" ile karşılaştırarak boolean'a dönüştür.
Aşağıdaki iki koşulu değerlendir ve her birinin sonucunu var_dump() kullanarak yazdır, her biri yeni bir satırda:
- Etkinliğe girebilip giremeyeceğini kontrol et: en az 18 yaşında VE bileti olmalı
- Ücretsiz giriş alıp alamayacağını kontrol et: üye olmalı VEYA daveti olmalı
Örnek:
Girdiler 25, true, false ve true ise, çıktı şu olmalı:
bool(true)
bool(true)Açıklama:
- 25 >= 18 VE hasTicket true → true
- isMember false VEYA hasInvitation true → true
Kopya kağıdı
AND operatörü (&&) her iki koşul da doğru olduğunda true döndürür:
<?php
$age = 25;
$hasLicense = true;
$canDrive = $age >= 18 && $hasLicense;
var_dump($canDrive); // bool(true)
?>OR operatörü (||) en az bir koşul doğru olduğunda true döndürür:
<?php
$isWeekend = true;
$isHoliday = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(true)
?>Kendin dene
<?php
// Giriş değerlerini oku
$age = intval(fgets(STDIN));
$hasTicket = trim(fgets(STDIN));
$isMember = trim(fgets(STDIN));
$hasInvitation = trim(fgets(STDIN));
// TODO: String değerleri "true" ile karşılaştırarak boolean'a dönüştür
// TODO: Kişinin etkinliğe girebileceğini kontrol et (en az 18 VE bilet sahibi)
// TODO: Kişinin ücretsiz giriş alıp almadığını kontrol et (üye OL YA DA davetiyesi var)
// var_dump() kullanarak sonuçları çıktı ver
?>Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators