2010-03-25 2 views
14

: 그것은 잘 작동.po 파일을 생성하는 방법은 무엇입니까? 나는 다음과 같은 한 WAMPserver (아파치, MySQL은, PHP)를 사용하여 Windows에서

//test.php 
if (!defined('LC_MESSAGES')) 
define('LC_MESSAGES', 6); 

$lang = "sv"; 
putenv("LANG=$lang"); 
setlocale(LC_ALL, $lang); 

$domain = "messages"; 
bindtextdomain($domain, "./locale"); 
textdomain($domain); 

echo _("This is a string"); 

, 그것은 출력 즉 내가 gettext 올바르게 설정까지를 의미 "이것은 문자열입니다."

하지만 어떻게 세계는 내가 .po 파일을 만들려면 어떻게해야합니까?

Poedit을 다운로드했지만이 소프트웨어로 어떻게해야하는지 알 수 없습니다.

도움을 주시면 대단히 감사하겠습니다.

+0

이 튜토리얼의 도움이되었습니다. [>> Gettext & PoEdit >>] (https://www.youtube.com/watch?v = -RuqVDdC1cI) –

답변

7

PoEdit은 .po 파일을 만드는 도구입니다. 당신은 그걸로 약간의 구성을해야만하고 그것은 쉽지 않습니다. 그것이 작동해야하는 방식은 사용자가 구성한 마커 문자열에 래핑 된 소스 코드의 모든 텍스트를 찾습니다. 이것은 번역자에게주는 원본 텍스트가됩니다. 그런 다음 대상 언어로 번역하고 번역 파일을 저장하고 반환합니다. 그런 다음 해당 파일을 PHP 응용 프로그램의 특수 디렉토리에 덤프하고 gettext 확장자가 변환 문자열 중 하나를 볼 때마다 적절한 번역을 가져옵니다.

poedit를 사용하는 위치에 대한 세부 정보를 표시하면 도움이 될 것입니다. "소스 경로"에서> 새 카탈로그 ... -

내가 가진 ---- test_1.php ----

<?php 
    echo _("Test phrase"); 
    echo gettext("Test phrase two"); 
    // NOTE: _ == gettext() 
?> 

파일과 같은 파일 : PHP를위한

+1

Thx, 나는 그것을 처리 할 수 ​​있었다. 문제는 기본 경로를 설정하는 방법이 명확하지 않다는 것입니다. 인터페이스가 너무 오래되어서 새로운 경로를 만드는 방법을 이해하기에는 직관적이지 않습니다.:) – tobefound

+0

카탈로그 파일의 경로 (절대 경로) 설정이 가장 중요합니다. 그렇지 않으면 Poedit은 소스 파일에서'gettext()'를 사용할 수 없습니다. –

+1

@VolkerE. 하나의면에서는 조언이 정확하지 않습니다. 절대 경로가 아닌 * relative *를 사용해야합니다. 왜냐하면 전자는 다른 시스템으로 이동할 수 없기 때문입니다. 더 나은 아직, 소스 경로를 설정하기위한 절대적으로 끔찍한 (그리고 나는 이것을 Poedit 저자로 말하고있다) 인터페이스를 수정 한 Poedit 1.8beta3 (또는 그 이상)을 사용하고 관련 디렉토리를 드래그 할 수 있습니다. –

8

탭에서 새 폴더를 클릭해야합니다. 파일이있는 폴더의 경로를 추가하십시오 (이 예제에서 test_1.php).

... gettext() 또는 _() ... 그 기능에 대한 유용한 할 경우 당신에게 싶어 테스트를 할 때를, 제발 그만하고 시작 (다시 시작) (XAMPP에서 예를 들어) 아파치를 사용하여 ... 여기 http://www.php.net/manual/es/function.gettext.php

을 설명하고 gettext()으로 정의 된 언어의 새로운 변경, 다른 방법으로 변경에 영향을주지 않습니다.

관련 문제