2010-03-25 10 views
14

: Düzgün çalışır.po dosyası nasıl oluşturulur? Ben şu var WAMPServer (Apache, MySQL, PHP) kullanarak Windows'ta

//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"); 

, bu çıkışı yani ben gettext doğru kurulum up var demektir "Bu bir dizedir".

Ama dünyada NASIL bir .po dosya oluşturur?

Poedit'i indirdim ancak bunun nasıl yapıldığını göremiyorum.

Herhangi bir yardım büyük beğeni topluyor!

+0

Bu eğiticiyi faydalı buldum [>> Gettext & PoEdit >>] (https://www.youtube.com/watch?v = -RuqVDdC1cI) –

cevap

7

PoEdit, .po dosyasını oluşturma aracıdır. Bununla küçük bir yapılandırma yapmalısınız ve bu en kolay değil. Çalışması gereken yol, yapılandırdığınız işaretleyici dizgisine sarılmış olan kaynak kodunuzdaki tüm metni bulur. Bu, çevirmeninize verdiğiniz kaynak metin haline gelir. Daha sonra bunları hedef dile (dil) çevirir ve çeviri dosyalarını kaydeder ve size geri gönderir. Daha sonra, bu dosyaları php uygulamanızda özel bir dizine döküyorsunuz ve gettext uzantısı, çeviri dizgilerden birini uygun çeviriyi getirdiğinde ne zaman görür.

Poedit ile nerede takıldığınızı gösteren bazı detayları gösterirseniz, muhtemelen daha fazla yardımcı olabilirim. "Kaynak yolları" olarak> Yeni katalog ... -

Ben ---- test_1.php ----

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

File gibi bir dosya: php İÇİN

+1

Thx, dağıtmayı başardım. Sorun, bazepat (lar) ın nasıl ayarlanacağı konusunda net olmadığıydı. Ve arayüz yeni bir yolun nasıl oluşturulacağını anlamak için yeterince sezgisel olmak için çok eski.:) – tobefound

+0

En önemlisi, katalog dosyanızdaki yol (mutlak yol) ayarlarıdır, aksi takdirde Poedit, kaynak dosyalarından 'gettext()' yi kullanamaz. –

+1

@VolkerE. tavsiye bir yönüyle yanlıştır: * göreceli *, mutlak yollar kullanmamalısınız, çünkü eski makine diğer makinelere karşı açık değildir. Daha da iyisi, kaynak yolunu ayarlamak için kesinlikle korkunç olan (ve bunu Poedit yazar olarak söylüyorum) arayüzü sabitleyen Poedit 1.8beta3'ü (veya daha yeni) kullanın ve ilgili dizinleri sürüklemenize izin verin. –

8

sekmesinde, (bu örnek test_1.php olarak)

dosyayı var mı klasörün yolunu ekleyin, yeni bir klasöre tıklamak zorunda ... Onlar gettext() ya çağrılır olsun TÜM dizeleri yakalandı _() ... bu işlev için yararlı yaparsanız etmek istediğini testini zaman da bundan, Dur lütfen ve Başlat (Yeniden) (Xampp örneğin) Apache kullanmak ... Burada http://www.php.net/manual/es/function.gettext.php

açıklanmıştır VE edilir gettext() ile tanımlı bir dilde yeni bir değişiklik, başka bir şekilde değişiklik etkilenmeyecektir