Php ZF2:如何翻译表单注释?

Php ZF2:如何翻译表单注释?,php,zend-framework2,zfdoctrine,Php,Zend Framework2,Zfdoctrine,这是翻译文档注释的一种方法吗 下面是我实际代码的一个示例: /** * * The Item Name * @var string * @Annotation\Options({"label":"Name"}) * @Annotation\Attributes({"type":"text"}) * @ORM\Column(type="string", length=128, nullable=false, unique=true)

这是翻译文档注释的一种方法吗

下面是我实际代码的一个示例:

  /**
     *
     * The Item Name
     * @var string
     * @Annotation\Options({"label":"Name"})
     * @Annotation\Attributes({"type":"text"})
     * @ORM\Column(type="string", length=128, nullable=false, unique=true)
     */
    private $name;
要在模板文件中转换生成的表单标签,我使用twig:

 <label for="{{field.getName()}}">
    {{translate(field.getLabel())}}:
 </label>

是否有更好的解决方案来修复此问题并翻译文档注释中的术语

没有办法强制poedit识别要从注释中翻译的文本。Poedit使用xgettext解析文件,而这一个只是忽略注释行


考虑编写您自己的解析器来修复此行为。创建.po文件并不像假装的那么困难。接下来,您必须使用msgfmt工具将其编译为.mo二进制格式。

好的,我在php cli中创建了一个自定义解析器。没有任何其他解决方案,它运行良好:谢谢你的回答。考虑在Github中发布你的工具:
/**
 * Unused in the software, used by external parser.
 */
private final function parseTranslations()
{
    $this->translate('Name');
    return null;
}