È questo Var o Tipo di Dataty ZF2
-
10-12-2019 - |
Domanda
public function setAlbumTable(AlbumTable $albumTable)
{
$this->albumTable = $albumTable;
return $this;
}
.
Sto parlando del primo parametro (non è il parametro BTW) sembra un tipo di dati?che cos'è ?costante ?Incontro questo quando cerchi di sviluppare un'app in zend framework 2
Soluzione
Questo è HING TIPO PHP .Significa che il primo parametro a questa funzione - $albumTable
- deve essere un'istanza della classe AlbumTable
o una classe che eredita da esso.
class Car {}
class BlueCar extends Car {}
function drive_the_car(Car $car) {}
drive_the_car(42); // error, first parameter must be an instance of Car
drive_the_car(new stdClass()); // error
drive_the_car(new Car()); // works
drive_the_car(new BlueCar()); // works
. Altri suggerimenti
Il pezzo di codice che stai mostrando è un esempio di iniezione di dipendenza tramite il metodo Setter.Il setter è superato un'istanza di albumtable e assegna questa istanza a un campo di classe.
Il tuo metodo è passato solo un parametro: $albumTable
.
The AlbumTable
Prima che il parametro sia un Tipo suggerimento eAssicura che solo un'istanza di albumtable o una classe derivante possa essere passata al setter.
Forza il parametro effettivo ($ albumtable) per essere un'istanza di classe di albumtable.PHP darà un errore irreversibile se qualsiasi altra cosa venga passata alla funzione.
Questo è utile in modo da non dover controllare quale tipo di variabile / oggetto ricevuto per utilizzare le sue funzioni e proprietà.