Menu
Coddy logo textTech

אופרטורים לוגיים — חלק 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 ועל האופן שבו אפשר לשלב כמה אופרטורים לוגיים.

challenge icon

אתגר

קל

קרא ארבעה ערכים מהקלט: מספר שלם age, מחרוזת hasTicket (או "true" או "false"), מחרוזת isMember (או "true" או "false"), ומחרוזת hasInvitation (או "true" או "false").

המר את ערכי המחרוזות לערכים בוליאניים על ידי השוואתם ל-"true".

בדוק את שני התנאים הבאים והדפס את התוצאה של כל אחד באמצעות var_dump(), כל אחד בשורה חדשה:

  1. בדוק אם האדם יכול להיכנס לאירוע: עליו להיות בן 18 לפחות AND להחזיק בכרטיס
  2. בדוק אם האדם מקבל כניסה בחינם: עליו להיות חבר 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()

?>
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר PHP אונליין