문제

어제 질문을 게시했지만 답이 특정 상황에서 작동하지 않는다는 것을 깨달았습니다. 게시물이었다 GetText의 PHP 문자열 변수 그리고 다음은 다음과 같습니다.

안녕하십니까,

getText는 문자열 변수를 어떻게 변환합니까? 그것은 그것을하고 싶지 않은 것 같습니다 .. 내가 $ sentence = "hello world"가 있다고 가정 해 봅시다. 그리고 나는 에코 ($ sentence)를 에코하고 싶다. ... Poedit의 $ sentence 내부의 내용을 번역 할 수 있도록 어떻게해야합니까? -> echo sprintf (( "%s test"), $ sentence)를 사용할 수 있으며 이것은 "Hello World Test"를 인쇄합니다. 브라우저이지만 Poedit에서 "%S 테스트"로 나타나며 Poedit 내부에서 Hello World의 번역 된 버전을 얻지 못합니다. 그렇다면 Poedit 내부에서 문자열 변수를 어떻게 사용할 수 있습니까? 감사!

이것은 해결되었습니다.

XML 파일에서 데이터를 가져 와서 번역하려면 문제가 발생합니다.

다음을 수행하고 싶습니다.

$foo = $xmlData -> titleText;

그리고

echo _($foo); 

또는 같은 것

$finalVar = _($foo);

브라우저의 PHP 파일을 보면 페이지에서 $ foo의 내용을 볼 수 있지만 Poedit은 $ foo 내부의 문자열을 선택하지 않으므로 번역 할 수 있습니다.

(JS 파일 내에서 정보를 변환 할 때이 문제가 발생할 것이라고 생각합니다)

도와 주셔서 감사합니다.

사이먼

도움이 되었습니까?

해결책

분명히 POEDIT를 PHP를 이해하게 만들 수는 없습니다.

편집하다: 다른 접근법을 고려해 보셨습니까?

if (true) {
    $foo = _('variable holds true');
}

else {
    $foo = _('variable holds false');
}

echo $foo;

PHP가 GetText 호환 XML을 생성 할 수 있으며 데이터베이스와 관련하여 최상의 솔루션은 DB 자체에 번역을 저장하는 것이지만 데이터베이스에서 모든 키와 값을 덤프하고 getText를 사용하는 스크립트를 만들 수도 있습니다. 그것.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top