Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [PHP] Ordine degli operatori

    Scrivere:
    Codice PHP:
    if (!$result mysql_query($query$db)) {
        
    // do something...

    è uguale a scrivere
    Codice PHP:
    if (!($result mysql_query($query$db))) {
        
    // do something...

    ?

    L'heap di PHP considera l'operatore di assegnazione "=" prima della negazione "!" del suo risultato?
    Ho fatto molte prove e i miei risultati confermano che sia così, ma altre conferme da eminenti membri forensi sarebbero bene accette.


    P.S. nella guida PHP a questa pagina ci sono le priorità degli operatori, ma guarda caso manca proprio quella dell'operatore di negazione.
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Nella tabella "ufficiale" (http://it2.php.net/manual/en/language.operators.php) l'operatore di negazione si trova piuttosto in alto nella classifica. Tuttavia:

    Note: Although = has a lower precedence than most other operators, PHP will still allow expressions similar to the following: if (!$a = foo()), in which case the return value of foo() is put into $a.
    Attenzione: la pagina del manuale tradotta in italiano dice cose simili ma non identiche. In ogni caso, la sostanza è la stessa.

  3. #3
    wow questa è una di quelle cose che mi son sempre chiesto ma che non ho mai approfondito! Grazie, mi avete tolto un sassolino dalla scarpa!
    Questa e' la mia firma! Lo so, e' una mezza schifezza.
    Un sito
    - skype non è per consulenze online -

  4. #4
    Originariamente inviato da luca200
    Nella tabella "ufficiale" (http://it2.php.net/manual/en/language.operators.php) l'operatore di negazione si trova piuttosto in alto nella classifica. Tuttavia:



    Attenzione: la pagina del manuale tradotta in italiano dice cose simili ma non identiche. In ogni caso, la sostanza è la stessa.
    Ciao Luca,
    quando ho detto "eminenti membri forensi" intendevo una cerchia di persone che includeva anche te!
    La tabella di PHP mette la negazione prima dell'assegnazione, però specifica l'eccezione che mi hai segnalato tu, quindi si può dire che la prima notazione funziona.

    Però per una scrittura formalmente corretta è più indicata la seconda.
    Grazie!

    __________________
    "Lodiamo il Signore imparando a conoscere la birra!"
    Fra Tuck, da "Robin Hood prince of thieves", 1991, Kevin Reynolds.
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

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 © 2024 vBulletin Solutions, Inc. All rights reserved.