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

Discussione: Funzioni php

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    191

    Funzioni php

    Salve

    Sto iniziando a studiare le funzioni, e riporti qui un esempio che non riesco a capire:

    <?php
    function multiply_number ($num1, $num2)
    {
    return ($num1 * $num2);
    }
    function is_over_1000($num)
    {
    if($num >1000)
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    $lenght = 200;
    $width= 50;
    $area = multiply_number($lenght, $width);
    echo $area;
    if (is_over_1000($area) )
    {
    echo "

    High</p>";
    }
    else
    {
    echo "

    Low</p>";
    }

    ?>

  2. #2
    Scusa,
    cosa non ti è chiaro?
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  3. #3
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310

    Re: Funzioni php

    Originariamente inviato da lillop
    Salve

    Sto iniziando a studiare le funzioni, e riporti qui un esempio che non riesco a capire:
    Codice PHP:
    <?php
    function multiply_number ($num1$num2)
    {
    return (
    $num1 $num2);
    }
    function 
    is_over_1000($num)
    {
    if(
    $num >1000)
    {
    return 
    true;
    }
    else
    {
    return 
    false;
    }
    }
    $lenght 200;
    $width50;
    $area multiply_number($lenght$width);
    echo 
    $area;
    if (
    is_over_1000($area) )
    {
        echo 
    "

    High</p>"
    ;
    }
    else
    {
        echo 
    "

    Low</p>"
    ;
    }

    ?>
    cerca di usare il tag per il codice php
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    191
    cioè

    $lenght = 200;
    $width= 50;
    $area = multiply_number($lenght, $width);

    Sostituiscono num1 e num2 nella funzione multiply_numer giusto?

    e se facessi in questo modo

    $num1 = 200;
    $num2= 50;
    $area = multiply_number;

    Perchè mi da errore?

  5. #5
    Ti da errore perchè il prototipo della funzione è stato dichiarato in modo tale che la stessa funzione riceva i parametri di altezza e larghezza.

    $num1 e $num2 sono i parametri della funzione, il loro scope (visibilità) è a livello della funzione
    cioè solo la funzione utilizza $num1 e $num2 al suo interno.
    per fare come dici te, dovresti dichiarare variabili globali alle quali fare riferimento dall'interno della funzione:
    Codice PHP:
    $var1 50;
    $var2 10;

    function 
    multiply_number ()
    {
       return (
    $var1 $var2);

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    191
    scusami ma non ti seguo...

    riscrivendo così il codice

    function multiply_number ($num1, $num2)
    {
    return ($num1 * $num2);
    }
    function is_over_1000($num)
    {
    if($num >1000)
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    $num1= 200;
    $num2= 50;
    $area = multiply_number($num1, $num2);
    echo $area;
    if (is_over_1000($area) )
    {
    echo "

    High</p>";
    }
    else
    {
    echo "

    Low</p>";
    }
    ?>

    Se imposto così tutto funziona!
    Non capisco xkè se rikiamo la funziona multiply_numer e non iserisco all'interno () le variabili non va.
    Perchè?

  7. #7
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da mirkoagrati
    Ti da errore perchè il prototipo della funzione è stato dichiarato in modo tale che la stessa funzione riceva i parametri di altezza e larghezza.

    $num1 e $num2 sono i parametri della funzione, il loro scope (visibilità) è a livello della funzione
    cioè solo la funzione utilizza $num1 e $num2 al suo interno.
    per fare come dici te, dovresti dichiarare variabili globali alle quali fare riferimento dall'interno della funzione:
    Codice PHP:
    $var1 50;
    $var2 10;

    function 
    multiply_number ()
    {
       return (
    $var1 $var2);

    Ciao
    RIPETO, USA IL TAG PHP
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    191
    Si scusa per il tag php

    Qualcuno sarebbe così gentile da spiegarmelo in altre parole?
    Grazie

  9. #9
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da lillop
    Qualcuno sarebbe così gentile da spiegarmelo in altre parole?
    Grazie
    mi sembra chiara la spiegazione di mirkoagrati.

    Se dichiari una funzione

    Codice PHP:
    function miafunzione($var1,$var2)
    {


    quando poi la vai a usare devi chiamarla usando due variabili
    Codice PHP:
    $foo miafunzione($num1$num2); 
    se la dichiari vuota miafunzione() la richiami $foo=miafunzione();
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  10. #10
    Tu dici:
    Non capisco xkè se rikiamo la funziona multiply_numer e non iserisco all'interno () le variabili non va.
    Perchè?
    Poniamo che tu abbia una bilancia con due piatti, un pulsante sulla bilancia ed un display che fa vedere un valore di peso.
    La bilancia è costruite in maniera che, se tu metti due oggetti sui piatti e premi il pulsante sul display appare la somma dei pesi degli oggetti che hai messo sui piatti
    Bene ...
    diamo un nome alla bilancia e la chiamiamo somma_piatti
    diamo un nome ai piatti e li chiamiamo $piatto1 e $piatto2
    in php, una funzione che fa questo è rappresentabile:
    Codice PHP:
    function somma_piatti($oggettoSulPiatto1$oggettoSulPiatto2) {
      return (
    $oggettoSulPiatto1 $oggettoSulPiatto2);

    Mentre l'azione di ottenere, tramite la pressione del pulsante, la somma dei pesi, può essere scritta in php così:
    Codice PHP:
    echo somma_piatti($piatto1$piatto2); 
    Quindi se "chiami" la funzione somma_piatti "passandole" i valori dei due piatti, essa ritorna la somma dei due valori.

    Bene.
    Ma se tu "chiami" la funzione somma_piatti non passandole nulla, va da sè che la funzione non può operare: non sa con quali valori lavorare!

    Chissà se mi sono spiegato!
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

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.