zf-hipsters / 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-24 05:36:02 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',
),
),
),
服务管理器示例
在您的控制器文件中
$this->getServiceLocator()->get('Application\Service\MyService');
调用工厂
$this->getServiceLocator()->get('Application\Service\MyServiceFactory');