开发者

Double underscore in PHP

开发者 https://www.devze.com 2022-12-11 22:44 出处:网络
W开发者_开发知识库hat does the double underscores in these lines of PHP code mean? $WPLD_Trans[\'Yes\'] = __(\'Yes\', $WPLD_Domain);

W开发者_开发知识库hat does the double underscores in these lines of PHP code mean?

$WPLD_Trans['Yes'] = __('Yes', $WPLD_Domain);
$WPLD_Trans['No'] = __('No', $WPLD_Domain);


It looks like you're using WordPress - wp-includes/l10n.php defines __ as a function that translates a string (similar to gettext and its alias, _, but with an optional parameter for explicitly specifying a domain).


Strictly speaking, it means nothing in PHP as it is not a pre-defined function. However, in many frameworks, like CakePHP, and other libraries the double underscore is a function used for translating strings based on the user's language/locale preference.


WordPress documents its __() function, and part of the localisation technology on Working with WordPress Core – Translate WordPress.

It is difficult to find documentation because __(), __('') or __("") is not very searchable. Double underscore and parentheses (round brackets) are some keywords to use.


As mentioned it is generally used for translating text between languages but really it is used in the same context as any function call.

testfunction();

is no different then

__();


A similar or third-party GNU gettext based implementation is gettext():

Note: You may use the underscore character '_' as an alias to this function.

0

精彩评论

暂无评论...
验证码 换一张
取 消