gpt4 book ai didi

php - PoEdit 和 PHP 注释

转载 作者:可可西里 更新时间:2023-11-01 13:26:47 25 4
gpt4 key购买 nike

我正在寻找一种让 PoEdit 理解 PHP 注释的方法。这是我希望 PoEdit 提取并放入目录中的代码示例:

class MyController extends Controller {

/**
* @Title "Home"
*/
public function index() {
...
}

}

有趣的部分是@Title注解。它在前端 Controller 中访问并分配给主视图,有效地在 <title>...</title> 中结束。标签。

现在我需要翻译那个字符串,但 PoEdit 似乎只理解 _()表达式,并添加 @Title to 关键字不起作用。这可能是因为 PHP 中的注释位于注释 block 中。

有没有办法强制PoEdit理解注解?

最佳答案

简短的回答,你不能。

POEdit 使用 xgettext因此使用特定语法扫描您的文件,忽略注释行。

例如,如果您的关键字是 _,则以下示例将被解析为:

_('test'); -> 字符串 'test'

_("test"); -> 字符串 'test'

_('test' -> string 'test'

_ 'test -> 没有捕获

_('测试 -> 没有捕获

_(test) -> 没有捕获

_($test) -> 没有捕获

//_('test'); -> 没有捕获

/*_('test');*/ -> 没有捕获

您可以使用其他参数执行xgettext,但我不确定您是否能够实现您的目标。


一个简单的解决方法(不是标准的 ofc)是添加其他关键字,如 placeholder 并制作一个 php 函数,如

function placeholder($string){}

并使用它以便 POEdit 可以解析它

class MyController extends Controller {

/**
* @Title "Home"
*/
public function index() {
placeholder('Home');
...
}

}

在您的前端解析器中,只需使用简单的 _($value) 即可翻译您的标题。

不知道您的代码如何,但会假设它与此类似。

假设 $tag = 'title' 和 $value = 'Home'

echo '<'.$tag.'>'._($value).'</'.$tag.'>';

关于php - PoEdit 和 PHP 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11563403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com