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

Discussione: dubbio sulla sintassi

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190

    dubbio sulla sintassi

    Ciao a tutti. Questo è il mio primo post per Php.

    Siate clementi. Ecco il mio problema.


    $filelist = "email.txt"



    mi ritrovo con la seguente riga di codice:

    ....

    $filecontents = file($GLOBALS["filelist"]);

    ....


    non era più corretto scrivere:

    $filecontents = file($filelist); ?????

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190
    Per cortesia, qualcuno mi può aiutare a comprendere che cos'è che non capisco?

    Grazie. Walter

  3. #3
    $GLOBAL[var] serve a rendere globale nello script la variabile indicata. Quindi sara' disponibile per le funzioni o metodi senza dover dichiare successivamente "global $var".

    per maggiori info consulta il manuale.

    http://it2.php.net/manual/en/reserve...iables.globals


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190
    ...se ho capito bene

    se devo utilizzare $filelist anche all'interno di funzioni, per esempio, mi conviene dichiarare

    $GLOBAL["filelist"]

    all'inizio dello script. Così facendo, per tutti $filelist sarà la stessa variabile


    Oppure, all'interno di una funzione dichiarare

    GLOBAL $filelist

    per riferirmi a $filelist esterna della funzione


    Speriamo bene....

  5. #5
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    No.

    $GLOBAL['var'] non è una dichiarazione, ma semplicemente un elemento dell'array $GLOBAL che equivale alla variabile globale $var.

    In sostanza, usarlo nello script principale è inutile, mentre all'interno di una funzione serve per accedere alle variabili globali senza dichiarare "global $var"

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190
    Per intanto grazie. Purtroppo ho ancora un poco (o tanto) di nebbia.


    1) $GLOBAL è un'array

    .... di tipo associativo? 'a' => 'b'


    2) $GLOBAL['filelist'] è un elemento dell'array


    .... ma cosa contiene tale elemento? forse un puntatore
    alla variabile $filelist ?

    .... E chi ha scritto tale riferimento alla variabile??

    Scusate se sono DURO a comprendere. Ci vuole pazienza!!!

  7. #7
    1) si
    2) si se la variabile e' globale
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190
    ...dai che quasi ci sono...

    $GLOBAL['filelist'] è un elemento dell'array $GLOBAL

    solo se $filelist è una variabile globale



    ..... ma perchè $filelist sia vista come variabile globale all'interno di un file php è sufficiente che $filelist sia definita ( es.: $filelist = "ciccio.dat" ) al di fuori di tutte le funzioni presenti nel file?

    Oppure l'unico modo per rendere $filelist globale è quello di scrivere

    GLOBAL $filelist

    ???

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    190
    Lo so che son duro, ma dai ...... ancora un piccolo aiuto.

    Grazie

  10. #10
    Codice PHP:
    <?php
    $a
    ='5';
    echo 
    $a;             //  posso usare indifferentemente $a
    echo $GLOBALS['a'];  //  oppure  $GLOBALS['a'] , è la stessa var

    function a(){
        echo  
    $a// non puo stamparla in quanto non è visibile da dentro la funzione
    }

    function 
    b(){
        global 
    $a// rendo globale la var (solo all'interno di questa funzione, non ha a che fare con $GLOBALS)
        
    echo  $a;  // e quindi posso stamparla
    }

    function 
    c(){
        echo  
    $GLOBALS['a']; // funziona in quanto $GLOBALS  è visibile ovunque
    }
    ?>
    spero ti chiarisca le idee, ciao

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.