Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: semplificare codice if

  1. #1
    Utente di HTML.it L'avatar di diaz
    Registrato dal
    Apr 2000
    residenza
    Berlin
    Messaggi
    379

    semplificare codice if

    come posso fare per semplificare questo codice?

    if(empty($nome_cognome)) { echo "Compila attentamente i campi obbligatori!"; }
    if(empty($data_nascita)) { echo "Compila attentamente i campi obbligatori!"; }
    if(empty($città)) { echo "Compila attentamente i campi obbligatori!"; }


    ci vorrebbe qualcosa tipo OR

    if(empty($nome_cognome)) OPPURE (empty($data_nascita)) OPPURE (empty($data_nascita)) { echo "Compila attentamente i campi obbligatori!"; }
    E da quel giorno, se andavo da qualche parte, io ci andavo correndo!

    Tweeting @apphancer | Views my own – except when I say things I don’t really think.

  2. #2
    codice:
    if(empty($nome_cognome)) || (empty($data_nascita)) || (empty($data_nascita)) { echo "Compila attentamente i campi obbligatori!"; }

  3. #3
    Utente di HTML.it L'avatar di diaz
    Registrato dal
    Apr 2000
    residenza
    Berlin
    Messaggi
    379
    grazie, ma mi dice Parse error: parse error, unexpected T_BOOLEAN_OR
    E da quel giorno, se andavo da qualche parte, io ci andavo correndo!

    Tweeting @apphancer | Views my own – except when I say things I don’t really think.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    525
    Si devono aggiungere una parentesi di apertura e una di chiusura che racchiudono le tre condizioni:

    if ((empty($nome_cognome)) || (empty($data_nascita)) || (empty($data_nascita))) { echo "Compila attentamente i campi obbligatori!"; }

  5. #5
    Utente di HTML.it L'avatar di diaz
    Registrato dal
    Apr 2000
    residenza
    Berlin
    Messaggi
    379
    perfetto
    E da quel giorno, se andavo da qualche parte, io ci andavo correndo!

    Tweeting @apphancer | Views my own – except when I say things I don’t really think.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    434
    oppure per abbreviare:
    codice:
    if(!$nome_cognome || !$data_nascita) echo "Compila attentamente i campi obbligatori!";
    che mi pare molto più breve ed ha lo stesso effetto..

  7. #7
    Originariamente inviato da billo
    oppure per abbreviare:
    codice:
    if(!$nome_cognome || !$data_nascita) echo "Compila attentamente i campi obbligatori!";
    che mi pare molto più breve ed ha lo stesso effetto..
    ha lo stesso effetto ma non è la stessa cosa

    attiva l'error reporting con E_ALL e scoprirai la differenza

    !$campo è true se $campo è false... ma se $campo non esiste è indefinito...

    l'effetto è simile ma la sostanza è diversa... conviene programmare con error reporting settato su E_ALL e usare i controli opportunamente:

    !$capo se vogliamo verificare che $campo sia false...
    empty($campo) se voglioamo verificare che $campo non è settato...

    ci si accorge più faiclmente degli errori logici...

  8. #8
    empty($campo) se voglioamo verificare che $campo non è settato...
    isset(), non empty() in questo caso :-) nomina sunt consequetia rerum :-P
    <?php echo ' Emiliano Gabrielli (aka AlberT) ',"\n",
    ' socio fondatore e membro del direttivo del GrUSP ',"\n",
    ' AlberT_at_SuperAlberT_it - www.SuperAlberT.it ',"\n",
    ' IRC: #php,#AES azzurra.com ',"\n",'ICQ: 158591185'; ?>

  9. #9
    Originariamente inviato da drAlberT
    isset(), non empty() in questo caso :-) nomina sunt consequetia rerum :-P
    io recentemente ho preso ad utilizzarla da sola senza prima verificare isset... chiaramente quando i valori che mi aspetto devono non essere "vuoti" (quindi ad esempio il campo non dev'essere 0)


    penso che implicitamente faccia anche una verifica come quella di isset... anche perchè sul manuale dice:

    "empty() è l'opposto di (boolean) var, tranne che non viene dato alcun warning quando la variabile non è valorizzata."

    mi sbaglio?

  10. #10
    mi riferivo semplicemente alla frase che hai usato :-P

    "empty($campo) se voglioamo verificare che $campo non è settato..."

    che è una imprecisione linguistica :-) empty() verifica che sia vuoto (con le dovute implicazioni di questa parola documentate nel man), isset() verifica che sia "settato" ..

    che poi tu possa usare direttamente empty() come mi dici può non essere un errore, ma non è di sicuro per " verificare che $campo non è settato..."
    :-D

    insomma, sono in vena polemica oggi :-)
    <?php echo ' Emiliano Gabrielli (aka AlberT) ',"\n",
    ' socio fondatore e membro del direttivo del GrUSP ',"\n",
    ' AlberT_at_SuperAlberT_it - www.SuperAlberT.it ',"\n",
    ' IRC: #php,#AES azzurra.com ',"\n",'ICQ: 158591185'; ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.