gettext php string değişken (bir senaryo unuttum)

1 Cevap php

Dün yayınlanan bir soru var ama ben sadece cevap belli bir durum için çalışıyor görünmüyor fark etti. Mesaj http://stackoverflow.com/questions/1349159/php-string-variables-in-gettext/1349209#1349209 ve burada sordu budur:

Merhaba,

How does gettext translate string variables? It doesn't seem to want to do it.. lets say I have $sentence = "Hello World"; ve daha sonra I want to echo ($sentence); ... how can I do that so that I can translate what's inside $sentence in Poedit?I can use -> echo sprintf(("%s test"), $sentence) and this will print "Hello World test" in the browser but it will appear as "%s test" in Poedit and I won't get the translated version of Hello World inside of Poedit. So how can I use string variables inside Poedit? Thanks!

Bu çözüldü.

Ben bir XML dosyasından veri kapmak ve çevirmek istiyorsanız sorun oluşur.

Ben aşağıdakileri yapabiliyor olmak istiyorum:

$foo = $xmlData -> titleText;

ve daha sonra

echo _($foo);

falan gibi

$finalVar = _($foo);

Ben tarayıcıda php dosyasına bakarsanız ben sayfada $ foo içeriğini görebilirsiniz ama poEdit yüzden onu çevirebilir $ foo içinde dize almak değil.

(Ben js dosyalarının içinde bilgi çeviri yaparken bu sorun da gerçekleşeceğine inanıyorum)

Yardımlarınız için teşekkür ederim,

Simon

1 Cevap

Açıkçası poEdit PHP anlamak yapamazsınız.

EDIT: Eğer farklı bir yaklaşım düşündünüz mü?

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

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

echo $foo;

PHP gettext uyumlu XML oluşturulan olabilir ve veritabanı hakkında, ben ancak siz de veritabanındaki tüm anahtarları ve değerleri dökümü için bir komut dosyası oluşturmak ve gettext kullanmak, en iyi çözüm DB kendisi çeviri depolamak için inanıyorum o.