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

    [PHP] Domanda stupida... perché usare @ prima dei comandi?

    Ciao,

    domanda stupidissima! ma a volte si sanno cose difficili e si ignorano quelle banali...

    ho trovato in diversi esempi e listati l'uso frequente del carattere @ anteposto ad alcuni comandi, per esempio:

    @mysql_query("BEGIN") # transaction
    @mysql_query("SELECT * FROM....) # selection query

    Mi chiedo a cosa serva la @, visto che i comandi funzionano perfettamente anche senza.
    Avevo letto da qualche parte ed in altri ambiti che la @ serviva per evitare che alcuni caratteri nella query potessero essere ma interpretati (che ne so... gli slashes o gli apici) ma non so se sia questo il motivo reale.

    Mi sapete dire?
    Grazie
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

  2. #2
    http://us.php.net/operators.errorcontrol

    Serve per 'sopprimere' gli errori.

    Meglio non usarlo .


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  3. #3
    Esatto! Serve per evitare che quella riga di codice possa generare un waring. Comunque, come dice whisher, è meglio non usarlo: se php genera un waring vuol dire che c'è qualcosa che non va, e che quindi va risolto, non ignorato.

  4. #4
    Non serve solo per sopprimere i warning ma serve a sopprimere TUTTI gli errori!

    Inoltre, la sopressione dell'errore non è fatta specificatamente per il comando ma viene detto a PHP di azzerare temporaneamente il report degli errori con il risultato che un'eventuale funzione che va a gestire gli errori delle funzioni (set error handler) non viene richiamata

    quindi è DECISAMENTE meglio non usarlo

  5. #5
    Ok.. lo tolgo va!
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

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.