2014-11-15 5 views
2

제 PHP 웹 사이트를 다른 언어로 번역하는 가장 좋은 방법은 무엇입니까? 내 웹 사이트는 현재 영어로되어 있으며 다른 언어 변수 설정으로 다른 언어 파일 (예 : en.php, pt.php, es.php 등)을 만들 수 있음을 알고 있습니다.PHP 웹 사이트를 다국어 사이트로 설정하려면 어떻게해야합니까?

그러나 * .po 또는 * .pot 파일을 사용하여 읽으면 웹 사이트를 쉽게 번역 할 수 있습니다.

내 웹 사이트의 모든 영어 텍스트를 추출한 다음 * .po 파일에 넣는 도구가 있습니까?

답변

3

PHP의 GetText 함수는 여러 언어로 작업 할 수있는 좋은 방법입니다.

.POT 휴대용 개체 틀 : .po, .mo.pot의 차이

첫째. 이것은 응용 프로그램에서 텍스트를 추출 할 때 얻는 파일입니다. 일반적으로이 파일을 번역사에게 보냅니다.

. PO Portable Object. 이것은 번역자로부터받은 파일입니다. 원본 텍스트와 번역본을 포함하는 텍스트 파일입니다.

.m0 기계 개체. MO 파일은 PO 파일과 정확히 동일한 내용을 포함합니다. 두 파일의 형식이 다릅니다. PO 파일은 텍스트 파일이고 인간이 읽기 쉽기 때문에 MO 파일은 컴파일되고 컴퓨터에서 쉽게 읽을 수 있습니다. 웹 서버는 MO 파일을 사용하여 번역을 표시합니다. PHP

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

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

// Choose domain 
textdomain("myPHPApp"); 

// Translation is looking for in ./locale/de_DE/LC_MESSAGES/myPHPApp.mo now 

// Print a test message 
echo gettext("Welcome to My PHP Application"); 

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

도구

내가 사용하는 도구는 Poedit입니다. 도구를 사용하면 POT의 새 텍스트를 병합하고 PO 또는 MO 파일을 생성 할 수 있습니다.