Fatla Error Fatal error: Cannot redeclare

Fatla Error Fatal error: Cannot redeclare

我正在阅读位于此处 Introduction to Zend Framework 2 的教程,在我导航到 localhost/album 之前一切正常,我收到错误

Fatal error: Cannot redeclare Album\Controller\AlbumController::indexAction() in /var/www/project/testingpj/module/Album/src/Album/Controller/AlbumController.php on line 27 Call Stack Time Memory Function Location 1 0.0001 228936 {main}( ) ../index.php:0 2 0.0491 2160776 Zend\Mvc\Application->run( ) ../index.php:17 3 0.0501 2174648 Zend\EventManager\EventManager->trigger( ) ../Application.php:313 4 0.0501 2174648 Zend\EventManager\EventManager->triggerListeners( ) ../EventManager.php:207 5 0.0503 2176408 call_user_func ( ) ../EventManager.php:468 6 0.0503 2176976 Zend\Mvc\DispatchListener->onDispatch( ) ../EventManager.php:468 7 0.0504 2177280 Zend\Mvc\Controller\ControllerManager->get( ) ../DispatchListener.php:96 8 0.0504 2177608 Zend\ServiceManager\AbstractPluginManager->get( ) ../ControllerManager.php:137 9 0.0505 2177608 Zend\ServiceManager\ServiceManager->get( ) ../AbstractPluginManager.php:103 10 0.0505 2178976 Zend\ServiceManager\ServiceManager->create( ) ../ServiceManager.php:525 11 0.0505 2179264 Zend\ServiceManager\ServiceManager->doCreate( ) ../ServiceManager.php:593 12 0.0506 2179456 Zend\ServiceManager\AbstractPluginManager->createFromInvokable( ) ../ServiceManager.php:637 13 0.0506 2179504 class_exists ( ) ../AbstractPluginManager.php:167 14 0.0506 2179816 spl_autoload_call ( ) ../AbstractPluginManager.php:167 15 0.0506 2180328 Zend\Loader\StandardAutoloader->autoload( ) ../AbstractPluginManager.php:0 16 0.0506 2180600 Zend\Loader\StandardAutoloader->loadClass( ) ../StandardAutoloader.php:215

我用谷歌搜索了所有内容,但似乎找不到问题所在。非常感谢任何帮助。我是ZF的新手。

我 运行 在 Ubuntu 14.04 本地使用 php5、apache2、Zend Framework 2.3

如果您需要更多信息,请告诉我。

这是我的代码: Module.php

<?php
namespace Album;

 use Zend\ModuleManager\Feature\AutoloaderProviderInterface;
 use Zend\ModuleManager\Feature\ConfigProviderInterface;
 use Album\Model\Album;
 use Album\Model\AlbumTable;
 use Zend\Db\ResultSet\ResultSet;
 use Zend\Db\TableGateway\TableGateway;

 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);
             },
             ),
         );
     }
}
?>

AlbumController.php

<?php
namespace Album\Controller;

 use Zend\Mvc\Controller\AbstractActionController;
 use Zend\View\Model\ViewModel;


     class AlbumController extends AbstractActionController
     {
             protected $albumTable;

             public function getAlbumTable()
             {
             if (!$this->albumTable) {
                 $sm = $this->getServiceLocator();
                 $this->albumTable = $sm->get('Album\Model\AlbumTable');
             }
             return $this->albumTable;
             }
             public function indexAction()
             {
             return new ViewModel(array(
                 'albums' => $this->getAlbumTable()->fetchAll(),
             ));
             }

             public function indexAction()
             {
             }

             public function addAction()
             {
             }

             public function editAction()
             {
             }

             public function deleteAction()
             {
             }

 }
?>

两种指数操作方法:

         public function indexAction()
         {
         return new ViewModel(array(
             'albums' => $this->getAlbumTable()->fetchAll(),
         ));
         }

         public function indexAction()
         {
         }