Это постоянный ZF2 VAR или DataType
-
10-12-2019 - |
Вопрос
public function setAlbumTable(AlbumTable $albumTable)
{
$this->albumTable = $albumTable;
return $this;
}
.
Я говорю о первом параметре (это не параметр btw) выглядит как dataType?что это ?постоянный ?Я столкнулся с этим при попытке разработки приложения в Zend Framework 2
Решение
Это Тип PHP подсказка .Это означает, что первый параметр к этой функции - $albumTable
- должен быть экземпляром класса AlbumTable
или класса, который наследует от него.
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
. Другие советы
Кусок кода, который вы показываете, является примером впрыска зависимостей через метод сеттера.Устройство передается экземпляром альбома и присваивает этот экземпляр в поле класса.
Ваш метод пропускается только один параметр: $albumTable
.
Генеракодицетагкод перед параметром представляет собой a Тип намека иУбедитесь, что только экземпляр альбома или класса вывода может быть передан на сетте.
Это заставляет фактический параметр ($, альбома), чтобы быть экземпляром альбома класса.PHP даст фатальную ошибку, если что-то еще передано функции.
Это полезно, поэтому вам не нужно проверять, какой тип переменной / объекта, который вы получили, чтобы использовать его функции и свойства.