PrestaSitemapBundle和类RouterInterface的多个定义

时间:2016-08-07 15:18:10

标签: php phpstorm symfony

尝试设置PrestaSitemapBundle,但是当我尝试添加侦听器时会发生错误。

https://github.com/prestaconcept/PrestaSitemapBundle/blob/master/Resources/doc/5-Usage-Event_Listener.md

  

捕获致命错误:参数1传递给   AppBundle \ EventListener \ SitemapListener :: __ construct()必须实现   接口Symfony \ Component \ Routing \ RouterInterface,给出的数组,   呼唤   /var/www/websitename/var/cache/dev/appDevDebugProjectContainer.php on   第3268行并定义了#34;在n / a in   /var/www/websitename/src/AppBundle/EventListener/SitemapListener.php   第28行

services.yml

RecyclerView

此外,PhpStorm显示"类路由器接口"的多重定义。

是否以某种方式与错误相关联?

PhpStorm notification

1 个答案:

答案 0 :(得分:1)

您的服务定义中存在错误。

两者..

array:
    - 1
    - 2

.. ..和

array: [1, 2]

..是定义命名数组的方法。

您的服务定义......

arguments:
    - ['@router']

..本质上是创建一个数组,第一个值是一个带有' @ router'的数组。作为内部数组的第一个值。要解决此问题,您需要选择一种定义阵列的方法。所以要么..

arguments:
    - '@router'

..或..

arguments: ['@router']