Pagina 1 di 1

include dentro una funzione

Inviato: 26/08/2010, 14:27
da BMercer
Mettiamo il caso di avere questo codice:

Codice: Seleziona tutto

class unaclasse
{
      private $var = array();
      public function funzionemia
      {
            include('file.php');
            $this->var = $array;
            echo $this->var['esempio'];
      }
}
 
e mettendo il caso che il file file.php contenga queste righe di codice

Codice: Seleziona tutto

$array = array
(
      'esempio' => 'Esempio 1'
);
 
perchè la funzione "funzionemia" non mi stampa "Esempio 1"?
Ma sopratutto come faccio a risolvere?

Re: include dentro una funzione

Inviato: 26/08/2010, 17:47
da Carlo
Facciamo un piccolo test. Sostituisci:

Codice: Seleziona tutto

            echo $this->var['esempio'];
con:

Codice: Seleziona tutto

            echo is_array($this->var) ? '1' : '0';
            echo isset($this->var['esempio']) ? '1' : '0';
E dimmi cosa ti stampa.

Re: include dentro una funzione

Inviato: 26/08/2010, 18:10
da BMercer
Il primo stampa 1 ed è coerente visto che indipendentemente dall'include $this->var è stato dichiarato come array all'inizio. Il secondo stamperà 0 invece a mio parere. Ora vedo.
EDIT:
Ho riguardato il codice e solo ora ho notato un errore di distrazione.

Dopo averlo corretto il sistema usato nel primo messaggio funzionava.
Grazie.