Visualizzazione risultati 1 fino 3 di 3

Discussione: Ritorno di variabile, quale è più corretto?

  1. #1
    Guest

    Predefinito Ritorno di variabile, quale è più corretto?

    Il mio dubbio è questo, non faccio mai le cose uguali e mi son ritrovato con 2 funzioni che mi fanno i return di variaible in modo diverso, secondo voi quel è quello ottimale / più veloce?

    I casi sono questi:


    Codice PHP:
    function ciao($foo) {

    if(
    $foo == 'bar') { return true; }
    else{ return
    false; }

    }
    o
    Codice PHP:
    function ciao($foo) {

    $response = false;
    if(
    $foo == 'bar') {$response = true; }

    return
    $response;
    }
    Che mi consigliate? :/
    Il risultato è identico, ma diciamo a livello di scrittura pulita, quale è il meglio? Io direi il primo, ma nel dubbio... magari imparo qualcosa di nuovo :P

    Chi risponde perfavore, motivi la sua idea, thanks, byee! !

  2. #2
    L'avatar di naviland
    naviland non è connesso Utente
    Data registrazione
    31-12-2009
    Messaggi
    128

    Predefinito

    Io in questo caso utilizzerei la seconda.
    Tendo a utilizzare più return in una funzione per terminarla in caso di errori, in un caso come questo preferisco modificare la variabile.
    Se vogliamo stare a fare pulci la prima credo sia meglio hai una variabile di meno quindi meno memoria e meno tempo perchè compi un operazione di meno però credo che questo risparmio non sia neanche quantificabile tanto sono piccoli i valori in gioco.

  3. #3
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    La prima è più naturale, usa una variabile in meno. Però io toglierei quelle graffe che sono inutili (e anche l'else).
    Codice PHP:
    function ciao($foo)
    {
    if(
    $foo == 'bar')
    return
    true;
    return
    false;
    }
    Un terzo modo più compatto sarebbe con l'uso dell'operatore ternario:
    Codice PHP:
    function ciao($foo)
    {
    return (
    $foo=='bar')?true:false;
    }
    Ciao!
    Ultima modifica di alemoppo : 19-08-2014 alle ore 20.45.31

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •