
Originariamente inviata da
Alhazred
1) I tipi di dato in PHP si usano solo nelle dichiarazioni delle funzioni.
Questa cosa serve solo per validare i parametri che si passano alla funzione durante la chiamata.
Nel tuo caso, quando crei un nuovo oggeto Libro, il costruttore verifica che ciò che gli stai passando siano 2 stringhe, ma ciò non forza poi le 2 variabili a restare stringhe all'interno del costruttore.
Tu non lo fai, ma volendo all'interno del costruttore potresti fare
$tit = array('pippo');
quindi far diventare $tit un array senza che PHP si lamenti.
Per questo motivo non ha senso dichiarare il tipo di una variabile in questo modo
protected string $titolo;
perché tanto nell'esecuzione dello script potrebbe diventare qualsiasi cosa senza generare errori.
2) da PHP > 5.1 puoi usare il tipo di dato array
3) Sì
Resta inteso che dichiarare i tipi di dato non è obbligatorio, se lo fai può essere più facile capire il significato del codice.