Php7中的Symfony 2转换器对象错误
这段代码以前在PHP5.4中可用,但升级到php7后出现以下错误: 类型错误:传递给dell\Bundle\dellbundles\ot\otdell的参数6::\uu construct()必须是Symfony\Bundle\FrameworkBundle\Translation\Translator的实例,Symfony\Component\Translation\DataCollectorTranslator的实例,在/var/www/dellprj/vendor/dfolder/dfolderbundles/dell/Bundle/otde/Controller/otdellController.php中调用 otdellController.php的代码:Php7中的Symfony 2转换器对象错误,php,symfony,Php,Symfony,这段代码以前在PHP5.4中可用,但升级到php7后出现以下错误: 类型错误:传递给dell\Bundle\dellbundles\ot\otdell的参数6::\uu construct()必须是Symfony\Bundle\FrameworkBundle\Translation\Translator的实例,Symfony\Component\Translation\DataCollectorTranslator的实例,在/var/www/dellprj/vendor/dfolder/dfol
$translator = $this->get('translator');
$myvar = new OtDell($this, $this->container, $viewParameters, $logger, $request, $translator);
表示问题出在$translator
上。无论如何,下面是OtDell类的代码:
public function __construct(Controller $controller, ContainerInterface $container, array $viewParameters, LoggerInterface $logger, Request $request, Translator $translator)
{......}
下面是$translator变量的var_转储:
提前感谢。导入转换器界面: 使用Symfony\Component\Translation\translator接口; 然后在构造函数中,使用TranslatorInterface$translator而不是translator$translator
谢谢@Thomas Mauduit Blin导入翻译界面: 使用Symfony\Component\Translation\translator接口; 然后在构造函数中,使用TranslatorInterface$translator而不是translator$translator
感谢@Thomas Mauduit Blin在您的构造函数中,使用
translator接口$translator
而不是translator$translator
谢谢您的评论,但同样的问题。我忘记导入(使用)translator接口,所以我添加了:使用Symfony\Component\Translation\translator接口;在构造函数中,使用TranslatorInterface$translator
而不是translator$translator
谢谢您的评论,但同样的问题。我忘记导入(使用)TranslatorInterface,所以我添加了:使用Symfony\Component\Translation\TranslatorInterface;