Двойное подчеркивание в PHP?
что означает двойное подчеркивание в этих строках кода PHP?
$WPLD_Trans['Yes']=__('Yes',$WPLD_Domain);
$WPLD_Trans['No']=__('No',$WPLD_Domain);
5 ответов
Похоже, вы используете Wordpress -wp-includes/l10n.php
определяет __ как функцию, которая переводит строку (аналогично gettext
и его псевдоним, _
но с необязательным параметром для явного указания домена).
строго говоря, это ничего не значит в PHP, поскольку это не предопределенная функция. Однако во многих фреймворках, таких как CakePHP и другие библиотеки, двойное подчеркивание является функцией, используемой для перевода строк на основе предпочтений языка/локали пользователя.
Как уже упоминалось, он, как правило, используется для перевода текста между языками, но на самом деле он используется в том же контексте, что любой вызов функции.
testfunction();
ничем не отличается, то
__();
документы WordPress это функция _ _ (), часть технологии локализации здесь: https://make.wordpress.org/polyglots/handbook/translating/working-with-core/#localization-technology
трудно найти документацию, потому что __(), __(") или _ _ ( "" ) не очень доступен для поиска, двойное подчеркивание и круглые скобки (круглые скобки) являются ключевыми словами для использования.
аналогичный или сторонний GNU gettext реализация на основании:
http://www.php.net/manual/en/function.gettext.php
Примечание: Вы можете использовать символ подчеркивания '_' в качестве псевдонима для этой функции.