Operatori logici Parte 1
Fa parte della sezione Fondamenti del percorso PHP di Coddy. Lezione 25 di 71.
Gli operatori logici ti permettono di combinare più espressioni booleane in una sola. Questo è essenziale quando devi verificare più condizioni contemporaneamente.
L’operatore AND (&&) restituisce true solo quando entrambe le condizioni sono vere:
<?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) - la condizione sull'età non è soddisfatta
?>L’operatore OR (||) restituisce true quando almeno una condizione è vera:
<?php
$isWeekend = true;
$isHoliday = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(true) - il fine settimana è true
$isWeekend = false;
$dayOff = $isWeekend || $isHoliday;
var_dump($dayOff); // bool(false) - entrambi sono false
?>Pensa a && come a «entrambi devono essere veri» e a || come a «almeno uno deve essere vero». Nella prossima lezione imparerai a conoscere l'operatore NOT e come combinare più operatori logici.
Sfida
FacileLeggi quattro valori dall'input: un intero age, una stringa hasTicket (che può essere "true" oppure "false"), una stringa isMember (che può essere "true" oppure "false") e una stringa hasInvitation (che può essere "true" oppure "false").
Converti i valori stringa in valori booleani confrontandoli con "true".
Valuta le due condizioni seguenti e stampa il risultato di ciascuna usando var_dump(), ognuna su una nuova riga:
- Verifica se la persona può entrare all'evento: deve avere almeno 18 anni E avere un biglietto
- Verifica se la persona entra gratis: deve essere un membro O avere un invito
Esempio:
Se i valori in input sono 25, true, false e true, l'output dovrebbe essere:
bool(true)
bool(true)Spiegazione:
- 25 >= 18 E hasTicket è true → true
- isMember è false O hasInvitation è true → true
Provalo tu
<?php
// Leggi i valori di input
$age = intval(fgets(STDIN));
$hasTicket = trim(fgets(STDIN));
$isMember = trim(fgets(STDIN));
$hasInvitation = trim(fgets(STDIN));
// TODO: Converti i valori delle stringhe in valori booleani confrontandoli con "true"
// TODO: Verifica se la persona può entrare all'evento (ha almeno 18 anni AND ha un biglietto)
// TODO: Verifica se la persona può entrare gratuitamente (è membro OR ha un invito)
// Mostra i risultati usando var_dump()
?>Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori di confronto e logici
Operatori di confrontoUguaglianza e identitàOperatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica semplice2Variabili e tipi di dati
NumeriStringhe e virgoletteValori booleaniConvenzioni di denominazioneRiepilogo - Inizializzazione delle variabiliVariabili vuoteConcatenazione di stringheAcquisire input dall'utenteConvertire in tipi diversi5Logica condizionale
Istruzione ifIf - elseL’operatore ternarioOperatore null coalescingIstruzione switchRiepilogo - Prendere decisioni3Operatori di base
Operatori aritmeticiOperatore moduloOperatore di elevamento a potenzaAssegnazione compostaIncremento/decrementoPrecedenza degli operatoriRiepilogo - calcoli sempliciOperatori per stringheEsercitati da solo: Compilatore PHP online