אופרטורים לוגיים — חלק 1
חלק מהיחידה יסודות במסלול ה-PHP של Coddy. שיעור 25 מתוך 71.
אופרטורים לוגיים מאפשרים לך לשלב כמה ביטויים בוליאניים לאחד. זה חיוני כשצריך לבדוק כמה תנאים בו-זמנית.
אופרטור AND (&&) מחזיר true רק כאשר שני התנאים מתקיימים:
<?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) - התנאי של age אינו מתקיים
?>אופרטור OR (||) מחזיר true כאשר לפחות אחד מהתנאים הוא true:
<?php
$isWeekend = true;
$isHoliday = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(true) - סוף השבוע הוא true
$isWeekend = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(false) - שניהם false
?>חשוב על && בתור "שניהם חייבים להיות אמת" ועל || בתור "לפחות אחד חייב להיות אמת". בשיעור הבא תלמד על אופרטור NOT ועל האופן שבו אפשר לשלב כמה אופרטורים לוגיים.
אתגר
קלקרא ארבעה ערכים מהקלט: מספר שלם age, מחרוזת hasTicket (או "true" או "false"), מחרוזת isMember (או "true" או "false"), ומחרוזת hasInvitation (או "true" או "false").
המר את ערכי המחרוזות לערכים בוליאניים על ידי השוואתם ל-"true".
בדוק את שני התנאים הבאים והדפס את התוצאה של כל אחד באמצעות var_dump(), כל אחד בשורה חדשה:
- בדוק אם האדם יכול להיכנס לאירוע: עליו להיות בן 18 לפחות AND להחזיק בכרטיס
- בדוק אם האדם מקבל כניסה בחינם: עליו להיות חבר OR להחזיק בהזמנה
דוגמה:
אם ערכי הקלט הם 25, true, false ו-true, הפלט אמור להיות:
bool(true)
bool(true)הסבר:
- 25 >= 18 AND hasTicket הוא true → true
- isMember הוא false OR hasInvitation הוא true → true
נסו בעצמכם
<?php
// קראו את ערכי הקלט
$age = intval(fgets(STDIN));
$hasTicket = trim(fgets(STDIN));
$isMember = trim(fgets(STDIN));
$hasInvitation = trim(fgets(STDIN));
// TODO: המירו את ערכי המחרוזת לערכים בוליאניים באמצעות השוואתם ל-"true"
// TODO: בדקו אם האדם יכול להיכנס לאירוע (בן 18 לפחות AND יש לו כרטיס)
// TODO: בדקו אם האדם זכאי לכניסה חינם (חבר OR יש לו הזמנה)
// הציגו את התוצאות באמצעות var_dump()
?>השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואהשוויון וזהותאופרטורים לוגיים — חלק 1אופרטורים לוגיים — חלק 2סיכום — לוגיקה פשוטה2משתנים וסוגי נתונים
מספריםמחרוזות ומירכאותערכים בוליאנייםכללי מתן שמותסיכום – אתחול משתניםמשתנים ריקיםשרשור מחרוזותקבלת קלט מהמשתמשהמרה לסוגים שונים3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור מודולואופרטור חזקההשמה משולבתהגדלה והקטנהקדימות אופרטוריםסיכום — חישובים פשוטיםאופרטורים למחרוזותתרגלו בעצמכם: קומפיילר PHP אונליין