Php 登录页面中出现错误symfony-警告:gettext()
当我在localhost中转到我的页面登录时: mylocal.com/app_dev.php/login,我有以下错误: 在呈现模板期间引发了异常 警告:gettext只需要1个参数,给定3个 在此模板的对齐上:Php 登录页面中出现错误symfony-警告:gettext(),php,linux,symfony,gettext,Php,Linux,Symfony,Gettext,当我在localhost中转到我的页面登录时: mylocal.com/app_dev.php/login,我有以下错误: 在呈现模板期间引发了异常 警告:gettext只需要1个参数,给定3个 在此模板的对齐上: <div class="form-group"> <input type="text" id="username" name="_username" value="{{ last_username }}" required="required" placeho
<div class="form-group">
<input type="text" id="username" name="_username" value="{{ last_username }}" required="required" placeholder="{{ 'security.login.username'|trans }}" class="form-control" />
</div>
我的版本:
php:
PHP 7.2.2-3+ubuntu16.04.1+deb.sury.org+1 cli构建日期:2018年2月6日16:11:23
阿帕奇:
服务器版本:Apache/2.4.18 Ubuntu我相信这是因为你的翻译。Twig希望{{}}是一个php变量,而不是字符串。试试这个:
{% trans %}security.login.username{% endtrans %}
确保symfony/twig bridge已安装如果使用twig extensions,它可能会从i18n扩展中连接。 因此,要快速修复它,只需禁用i18n扩展 我不确定为什么要对security.login.username使用引号,看起来您正在尝试从安全对象获取一些值,如果是这样,请尝试删除引号,如下所示:
<input type="text" id="username" name="_username" value="{{ last_username }}" required="required" placeholder="{{ security.login.username|trans }}" class="form-control" />
如果有人有相同的问题,并且在呈现模板时引发了异常,则警告:gettext只需要1个参数,给定3个参数。请检查已注册的细枝扩展的配置并将其删除:
twig.extension.i18n:
class: Twig_Extensions_Extension_I18n
tags:
- { name: twig.extension }
登录页面上的结果是:security.login.username“仔细查看名称,在您的评论中似乎有一个额外的单引号”,是否可以向我们提供异常的完整跟踪?symfony/translation组件似乎丢失。@AlexandreT我也有同样的问题,安装symfony/translation组件不会改变任何事情。@dado:下面的答案是否解决了您的问题?@AlexandreT是,在我的composer.json中有一个小树枝/扩展名:^1.5,在我的配置中取消了小树枝/扩展名后,我能够在没有任何问题的情况下呈现我的表单,所有工作都很好。我希望我下面的帖子能帮助有同样问题的人更快地修复它。我的composer.json中没有,我会尝试添加它吗?@Greg yeah,当然。作曲家需要symfony/twig Bridge你好,ParaSku,我会试试。
<input type="text" id="username" name="_username" value="{{ last_username }}" required="required" placeholder="{{ security.login.username|trans }}" class="form-control" />
twig.extension.i18n:
class: Twig_Extensions_Extension_I18n
tags:
- { name: twig.extension }