我开发了不同的系统。在他们使用PHP 5.4和另一个我有PHP版本5.5.9。
如果我使用5.4版本打开我的项目,那么一切都很好并且没有错误报告。但是,如果我尝试使用PHP 5.5.9打开同一个项目,我会收到以下错误并且symfony停止:
ContextErrorException:运行时注意:Event \ UserBundle \ Manager \ EventManager :: getRepository()的声明应该与...中的Event \ UserBundle \ Manager \ AbstractManager :: getRepository($ entity = NULL)兼容...
现在我读到php严格警告可能会产生此错误。但在我的PHP.ini错误设置中是这样的:
E_ALL & ~E_DEPRECATED & ~E_STRICT
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:2)
问题是您覆盖getRepository
的方法与基本方法getRepository($entity = null)
的格式不同。要停止错误(通过使其兼容),只需将$entity = null
添加到方法声明。
至于实际的错误问题(没有显示然后显示)我无法帮助你。在新版本中,事情变得更加严格。我最近注意到一个较新的版本不允许函数在类中声明为abstract,然后也在一个附带的接口中声明,所以它是可能的。