zf-hipsters / zfh-abstract-factory
此包最新版本(0.92)没有可用的许可信息。
一个简单的模块,用于删除设置服务和控制器所需的可调用和工厂的要求。
0.92
2013-10-22 19:42 UTC
Requires
- php: >=5.3.3
- zendframework/zendframework: >2.2.0rc1
This package is not auto-updated.
Last update: 2024-09-23 16:31:50 UTC
README
一个简单的模块,用于删除设置服务和控制器所需的可调用和工厂的要求。
无需使用可能导致代码不一致的别名,只需使用完整命名空间,抽象将在需要时找到并实例化它。
本模块旨在节省配置所需的时间。
安装
- 将以下要求添加到项目的composer.json文件中。
在"require"部分
"zf-hipsters/abstract-factory": ">=0.9"
- 打开命令行并运行
php ./composer.phar update
- 将'ZfhAbstractFactory'添加到您的/config/application.config.php模块中
路由示例
在没有启用ZfhAbstractFactory的情况下,您需要在配置中注册控制器,例如
'controllers' => array(
'invokables' => array(
'Album\Controller\Album' => 'Album\Controller\AlbumController',
),
),
当ZfhAbstractFactory被启用时,如果您在路由中使用完全限定名称(FQN)的控制器,则可以避免以这种方式注册控制器。
注意:已使用控制器的FQN。
'router' => array(
'routes' => array(
'home' => array(
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => array(
'route' => '/',
'defaults' => array(
'controller' => 'Application\Controller\IndexController',
'action' => 'index',
),
),
),�
)
);
另一个示例,具有固定控制器和动态操作的动态示例。
'smurf' => array(
'type' => 'Zend\Mvc\Router\Http\Segment',
'options' => array(
'route' => '/smurf[/:action]',
'controller' => 'Application\Controller\SmurfController',
'defaults' => array(
'action' => 'index',
),
),
),
ServiceManager示例
在您的控制器文件中
$this->getServiceLocator()->get('Application\Service\MyService');
调用工厂
$this->getServiceLocator()->get('Application\Service\MyServiceFactory');