私の環境(Zendサーバー):
PHP Version 5.4.11
Zend Server Version: 6.0.1
Zend Framework: 1.12.3, 2.1.4
Zend Server Gateway: 0.9.0.201301302347
Build: 69400
そこで、ZF2 形式の公式チュートリアルで最初のアプリケーションを作成しようとしました。
スケルトン アプリケーションの ZF バージョン:2.2
誰かがそれをもっと詳しく見たい場合、これは私のプロジェクトへのリンクです。
config/module.config.php
<?php
return array(
'controllers' => array(
'invokables' => array(
'Album\Controller\Album' => 'Album\Controller\AlbumController',
),
),
'view_manager' => array(
'template_path_stack' => array(
'album' => __DIR__ . '/../view',
),
),
);
module\Album\Module.php
<?php
namespace Album;
class Module
{
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';
}
}
そして、これは私のエラーです:
Zend\ModuleManager\Listener\Exception\InvalidArgumentException: Config being merged must be an array, implement the Traversable interface, or be an instance of Zend\Config\Config. integer given. in F:\Zend\Apache2\htdocs\learnzf2\vendor\zendframework\zendframework\library\Zend\ModuleManager\Listener\ConfigListener.php on line 317
Call Stack
# Time Memory Function Location
1 1.0510 137456 {main}( ) ..\index.php:0
2 1.0986 163240 Zend\Mvc\Application::init( ) ..\index.php:18
3 1.2171 345520 Zend\ModuleManager\ModuleManager->loadModules( ) ..\Application.php:253
4 1.2171 345680 Zend\EventManager\EventManager->trigger( ) ..\ModuleManager.php:109
5 1.2171 345936 Zend\EventManager\EventManager->triggerListeners( ) ..\EventManager.php:207
6 1.2195 354296 call_user_func ( ) ..\EventManager.php:468
7 1.2195 354312 Zend\ModuleManager\ModuleManager->onLoadModules( ) ..\EventManager.php:468
8 1.2371 383920 Zend\ModuleManager\ModuleManager->loadModule( ) ..\ModuleManager.php:90
9 1.2390 384984 Zend\EventManager\EventManager->trigger( ) ..\ModuleManager.php:154
10 1.2391 385016 Zend\EventManager\EventManager->triggerListeners( ) ..\EventManager.php:207
11 1.2431 391096 call_user_func ( ) ..\EventManager.php:468
12 1.2431 391112 Zend\ModuleManager\Listener\ConfigListener->onLoadModule( ) ..\EventManager.php:468
13 1.2439 391464 Zend\ModuleManager\Listener\ConfigListener->addConfig( ) ..\ConfigListener.php:127
What is problem with it?
デバッグしようとしましたが、コードの何が問題なのかわかりません。ただし、配列を返す場合でも int 値ですconfig/module.config.php
。
Ps。以前は、Xdebug (+PHPStorm) を使用していませんでした。たとえば、ブレークポイントを
config/module.config.php
のどこかに置くと、このブレークポイントをスキップして (表示すらされません)、ZF ライブラリ ファイル (たとえば、別のブレークポイントがある場所) に移動します。 )。それは正常ですか、それとも間違っていますか?