我正在学习框架Zend 2.我遇到了一个错误,即系统无法找到模型类。在这下面的消息。
致命错误:类'相册\型号\相册'在第47行的/Applications/MAMP/htdocs/zend2_tut/module/Album/Module.php中找不到
我使用的代码来自zend 2的教程。
代码如下:
Module.php
namespace Album;
// Models
use Album\Model\Album;
use Album\Model\AlbumTable;
// Db
use Zend\Db\ResultSet\ResultSet;
use Zend\Db\TableGateway\TableGateway;
// Zend
use Zend\ModuleManager\Feature\AutoloaderProviderInterface;
use Zend\ModuleManager\Feature\ConfigProviderInterface;
class Module implements AutoloaderProviderInterface, ConfigProviderInterface
{
public function getAutoloaderConfig() {
return array(
'Zend\Loader\ClassMapAutoloader' => array (
__DIR__ . '/autoload_classmap.php'
),
'Zend\Loader\StandardAutoloader' => array (
'namespaces' => array (
__NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__
)
)
);
}
public function getConfig() {
return include __DIR__ . '/config/module.config.php';
}
public function getServiceConfig() {
return array(
'factories' => array(
'Album\Model\AlbumTable' => function($sm) {
$tableGateway = $sm->get('AlbumTableGateway');
$table = new AlbumTable($tableGateway);
return $table;
},
'AlbumTableGateway' => function ($sm) {
$dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
$resultSetPrototype = new ResultSet();
$resultSetPrototype->setArrayObjectPrototype(new Album());
return new TableGateway('album', $dbAdapter, null, $resultSetPrototype);
},
),
);
}
}
Album.php
namespace Album\Model;
class Album
{
public $id;
public $artist;
public $title;
public function exchangeArray($data) {
$this->id = (!empty($data["id"])) ? $data["id"] : null;
$this->artist = (!empty($data["artist"])) ? $data["artist"] : null;
$this->title = (!empty($data["title"])) ? $data["title"] : null;
}
}
在文件树下面
Album
Model
------
Album.php
Module.php
我希望我能解决这个问题,因为我不知道问题出在哪里。提前谢谢。
答案 0 :(得分:0)
我认为在Module.php中你需要在下面做这个改变
class Module implements AutoloaderProviderInterface, ConfigProviderInterface {
要
class Module {
您也无需将这些添加到链接
使用Zend \ ModuleManager \ Feature \ AutoloaderProviderInterface; 使用Zend \ ModuleManager \ Feature \ ConfigProviderInterface;
如果没有这些功能自动加载器库,您的模块将正常工作。