Originariamente inviato da Lucked
si ho provato a scriverlo per rendermi conto se funzionava, e in effetti funziona. Pero sono stupito, non sono d'accordo in questa scelta dei progettisti di php, vuol dire che in qualche punto del codice posso mettere una variabile che neanche mi curo di creare in precedenza...mah....
PHP e' un linguaggio di scripting debolmente tipizzato, e non richiene nemmeno obbligatoriamente l'inizializzazione delle variabili. Le inizializza lui automaticamente, in base al tipo.
Per intenderci, se in java tu devi fare (prendo il tuo esempio di sopra):
codice:
Persona p;//la dichiari prima
if(true){
p = new Persona("Luca");
}
System.out.println(p.getNome());
In php puoi semplicemente fare:
Codice PHP:
if (true){
$p=new Persona("Luca");//in questo momento la variabile $p viene dichiarata e valorizzata
//conserva il suo valore anche fuori dal blocco, non essendo dichiarata in un contesto locale.
}
echo $p->getNome();