1
除了控制器,窗體,模型和視圖之外,我還想創建一個包含一些常用功能類的文件。如的common.php如何訪問自定義文件的數據庫
所以,做我需要爲我的這個自定義文件或有任何其他方式使用Zend的數據庫文件(配置/ local.php和配置/ global.php)
其他連接文件我應該在哪個文件夾下創建這個文件。
除了控制器,窗體,模型和視圖之外,我還想創建一個包含一些常用功能類的文件。如的common.php如何訪問自定義文件的數據庫
所以,做我需要爲我的這個自定義文件或有任何其他方式使用Zend的數據庫文件(配置/ local.php和配置/ global.php)
其他連接文件我應該在哪個文件夾下創建這個文件。
錯誤的概念。創建一個YourNamespace\Stdlib
- 包含通用功能的類庫。然後這些類將被注入他們需要的依賴關係。例如:
getServiceConfig() {
return array('factories' => array(
'stdlib-dbstuff' => function ($sm) {
$dbStuff = new \YourNamespace\Stdlib\DbStuff();
$dbStuff->setAdapter($sm->get('Zend\Db\Adapter\Adapter'));
return $dbStuff;
}
));
}
見類的命名空間Zend\Stdlib
的一些例子如下)
要使用Stdlib
只需撥打您從ServiceManager
需要的類。或者,您可以跳過ServiceManager
並簡單地在Controller-Level上注入依賴項(這有點糟糕,這不是控制器的責任)。
$dbStuff = $this->getServiceLocator()->get('stdlib-dbstuff');
// alternatively
$adapter = $this->getServiceLocator()->get('Zend\Db\Adapter\Adapter');
$dbStuff = new \YourNamespace\Stdlib\DbStuff();
$dbStuff->setAdapter($adapter);
再次感謝山姆。 – 2013-04-09 08:42:16