수색…


통사론

  • string gettext (string $message)

gettext ()로 문자열 지역화하기

GNU gettextphp.ini 포함되어야하는 PHP 내의 확장 기능입니다 :

extension=php_gettext.dll #Windows
extension=gettext.so #Linux

gettext 함수는 PHP 응용 프로그램을 국제화하는 데 사용할 수있는 NLS (Native Language Support) API를 구현합니다.


번역 문자열은 PHP에서 로켈을 설정하고 번역 테이블을 설정하고 번역하려는 문자열에 gettext() 를 호출하여 수행 할 수 있습니다.

<?php
// Set language to French
putenv('LC_ALL=    fr_FR');
setlocale(LC_ALL, 'fr_FR');

// Specify location of translation tables for 'myPHPApp' domain
bindtextdomain("myPHPApp", "./locale");

// Select 'myPHPApp' domain
textdomain("myPHPApp");

myPHPApp.po

#: /Hello_world.php:56
msgid "Hello"
msgstr "Bonjour"

#: /Hello_world.php:242
msgid "How are you?"
msgstr "Comment allez-vous?"

gettext ()는 post-complied .po 파일 인 .mo를로드합니다. 위의 번역 문자열을 매핑합니다.

이 작은 설정 코드를 입력하면 다음 파일에서 번역이 검색됩니다.

  • ./locale/fr_FR/LC_MESSAGES/myPHPApp.mo .

gettext('some string') 를 호출 할 때마다 .mo 파일에서 'some string' 이 번역되면 번역이 반환됩니다. 그렇지 않으면 'some string' 이 번역되지 않은 상태로 반환됩니다.

// Print the translated version of 'Welcome to My PHP Application'
echo gettext("Welcome to My PHP Application");

// Or use the alias _() for gettext()
echo _("Have a nice day");


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow