#Для ZF2, ZF3 разработчиков, использование ClassName::class В конфигах модулей, да и не только, часто приходится писать что-то вроде
//...
'controllers' => [
'factories' => [
'Controller\IndexController' => 'Controller\IndexControllerFactory',
],
],
//...
'validators' => [
[
'name' => 'EmailAddress',
'options' => [
//...
],
],
],
//...
'routes' => [
'test' => [
'type' => 'literal',
//...
],
],
Начиная с php 5.5 мы можем получить имя класса используя ::class и можем код переписать следующим образом
//...
'controllers' => [
'factories' => [
Controller\IndexController::class => Controller\IndexControllerFactory::class,
],
],
//...
'validators' => [
[
'name' => \Zend\Validator\EmailAddress::class,
'options' => [
//...
],
],
],
//...
'routes' => [
'test' => [
'type' => Literal::class,
//...
],
],
Плюсы такого подхода:
- удобнее рефакторить
- не нужно лезть в древо проекта и искать нужный класс, можно просто по нему сразу перейти