Visualizzazione risultati 1 fino 7 di 7

Discussione: Includere file in una classe

  1. #1
    Guest

    Predefinito Includere file in una classe

    Ciao a tutti.

    Vengo subito al dunque: ho dei file PHP uno dei quali è una classe, l'altro è un insieme di variabili che servono a questa classe per funzionare (prima che lo chiediate, no, non avrei intenzione di metterle insieme alla classe stessa).
    Ho bisogno che, includendo questo file all'interno della classe, le variabili in esso contenute divengano disponibili a tutti i metodi della classe.
    È fattibile in qualche modo? Le mie domande, in particolare, sono le seguenti:
    - Dove dovrei includere questi file?
    - Come dovrei accedere alle variabili in questione?

    P.S.: avevo già pensato all'inclusione del file con le variabili in tutti i singoli metodi della classe, ma non mi sembra un buon approccio. Dico male?

    Grazie a tutti!

  2. #2
    Guest

    Predefinito

    scusa, non puoi includerli dentro il file della classe con un semplice include (o require)?
    in fondo includere un file é come scrivere il contenuto di esso dentro il file in cui viene incluso

  3. #3
    Guest

    Predefinito

    Nella programmazione ad oggetti la questione non è così semplice. Se io includo il file all'esterno della classe, le variabili in esso contenute non saranno utilizzabili da nessun metodo all'interno della classe stessa. Se lo includo nelle prime righe della classe (ma fuori da ogni metodo) restituisce, come ovvio, un errore. Se lo inserisco nel metodo __construct() non me le rende utilizzabili.
    L'unica soluzione, ma secondo me non la più corretta, è quella di includerli per ogni metodo, ma volevo appunto sapere se esiste un'altra scappatoia.
    Grazie!

  4. #4
    Guest

    Predefinito

    intendevo questo, potresti se no spiegarci perché non puoi scrivere tutto insieme così si cerca una soluzione

  5. #5
    Guest

    Predefinito

    Si tratta di un'applicazione che deve essere localizzata in più lingue e che quindi richiede l'inclusione dei vari file di lingua. Il file di lingua è quello che contiene le variabili, e la classe deve poter accedere a questi dati. Tutto qui. :)

  6. #6
    L'avatar di andreafallico
    andreafallico non è connesso Super Moderatore
    Data registrazione
    02-06-2009
    Messaggi
    1,981

    Predefinito

    Non è tanto corretto, però ti ho fatto un esempio e funziona.

    File: def_var.php
    Codice PHP:
    <?php
    $aa
    =2;
    $b='Casa';
    $c=25;
    ?>
    Codice PHP:
    <?php
    include('def_var.php');
    class
    Prova{
    private
    $id;
    function
    __construct(){
    global
    $aa;
    $this->id = $aa;
    }
    function
    stampa(){
    global
    $aa,$b,$c;
    return
    'id: '.$this->id.'<br>a: '.$aa.'<br>b: '.$b.'<br>c: '.$c;
    }
    }
    ?>

  7. #7
    Guest

    Predefinito

    D'accordo... ma immagina la situazione estesa a centinaia se non migliaia di variabili... diventerebbe una cosa un po' complicata. Non c'è altro modo?

Regole di scrittura

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