【发布时间】:2012-01-14 23:06:06
【问题描述】:
我正在开发一个提供与 poEdit 相同功能的 Web 界面。
我想遍历指定文件夹中的所有 .php 文件并搜索每一行以进行翻译。为此,我想使用正则表达式搜索 php 文件中的实际行并返回翻译文本参数和域参数。
我的函数如下所示:
__('This is my translation', 'domain');
但是因为我为域参数定义了一个默认值,所以函数 __() 也可以这样调用:
__('this is my translation');
现在在 PHP 中,我尝试使用函数 preg_match_all() 但我无法将我的正则表达式组合在一起。
下面是脚本中可能的一行的示例,以及我希望使用 preg_match_all() 函数接收的输出数组:
echo __('Hello World'); echo __('Some domain specific translation', 'mydomain');
数组输出:
Array
(
[0] => Array
(
[0] => Hello World
)
[1] => Array
(
[0] => Some domain specific translation.
[1] => mydomain
)
)
谁能帮我解决正则表达式和 preg_math_all() 标志?
谢谢你们。
【问题讨论】:
-
澄清一下 - 您希望从 __() 函数调用的 all 中删除第二个参数?
-
你应该避免命名一个函数 __ iirc 以 __ 开头的函数、类等名称被认为是为 php 开发人员保留的。