Ben farklı dillerde çalışmak için sitemizi yükseltme üzerinde çalışıyorum.
Planım Mulitple dilde metin paragraf saklayabilir ve her paragraf bir tanımlayıcı vermektir.
Example
id => '1'
brief => 'welcome_paragraph'
en => 'Welcome to our website!'
de => 'Willkommen auf unserer Website!'
Gereksinimler
- hızla retreived
- her zaman CMS ile düzenlenmiş
- yeni diller eklemek için kolay
Yani bir veritabanı tablosundaki bu depolamak için en iyi çözüm nedir? Ve eğer öyleyse, aşağıdakilerden hangisine en iyi masa kurulum:
Bir tablo, her bir kısa için her dil ve satır için bir sütun:
ID, brief, en, de, es
Ya da iki tablo, breifs ile bir, çevirileri ile bir:
ID, brief
ID, language, translation
Her sayfasında, ben yapmak niyetinde ....
echo $ sayfa-> çevirmek ($ dil, $ kısa);
Metin gerektiren parça dışarı çıkarmak için birden çok kez .... Bu ile bir veritabanı arama tutmak için yavaş olacaktır:
SELECT translation FROM translations
WHERE language = 'es' AND brief = 'welcome_paragraph'
LIMIT 1
Her sayfada birden çok kez? Flatfile olarak depolamak için daha iyi bir yolu bu nedenle var mı? Veya on update çeviriler büyük bir dizi içeren oluşturulan bir PHP dosyası?
$english = array(
'message1' => 'message1',
'message2' => 'message2',
'message3' => 'message3');
$german = array(
'message1' => 'Nachricht1',
'message2' => 'Nachricht2',
'message3' => 'Nachricht3');
Much like the example on the Zend Translate page I'm not considdering using Zend Translate at this time... I assume there is a cost to it?