Radhad
Erfahrenes Mitglied
Um mal ein paar mehr Ansätze in die Runde zu werfen ...
"gettext" ist ein Format, welches extra entwickelt wurde um Software in mehreren Sprache nbetreiben zu können.
Des weiteren gibt es noch verschiedene XML Formate wie TMX, die man verwenden könnte.
Generell kann man ja einfach mal in den Quellcode von Zend_Translate des Zend Frameworks reinwerfen, dort gibt es eine Komponente für Übersetzungen, die mehrere Speicher-Formate als Adapter unterstützt.
Der große Nachteil einer Datenbank ist, dass dort mehrere hundert Übersetzungen ausgelesen werden müssen, was die Datenbank recht stark belastet und dem man mit Cachign entgegenwirken muss. Wenn man ein Dateiformat wie PHP Array oder INI/XML Dateien wählt, lässt sich das aber auch genauso wie bei einer Datenbank in einem Webinterface bearbeiten (ist aber e für die Versionierung).
Vorteilhaft ist es, alle Sprachen immer zu laden, um zu erkennen, wo noch Übersetzungen fehlen. Lade ich z.B. nur das Sprachfile für Französisch, kann es ja passieren, dass dort vielleicht nur die hälfte der Language Keys mit Übersetzung eingetragen wurden ...
"gettext" ist ein Format, welches extra entwickelt wurde um Software in mehreren Sprache nbetreiben zu können.
Des weiteren gibt es noch verschiedene XML Formate wie TMX, die man verwenden könnte.
Generell kann man ja einfach mal in den Quellcode von Zend_Translate des Zend Frameworks reinwerfen, dort gibt es eine Komponente für Übersetzungen, die mehrere Speicher-Formate als Adapter unterstützt.
Der große Nachteil einer Datenbank ist, dass dort mehrere hundert Übersetzungen ausgelesen werden müssen, was die Datenbank recht stark belastet und dem man mit Cachign entgegenwirken muss. Wenn man ein Dateiformat wie PHP Array oder INI/XML Dateien wählt, lässt sich das aber auch genauso wie bei einer Datenbank in einem Webinterface bearbeiten (ist aber e für die Versionierung).
Vorteilhaft ist es, alle Sprachen immer zu laden, um zu erkennen, wo noch Übersetzungen fehlen. Lade ich z.B. nur das Sprachfile für Französisch, kann es ja passieren, dass dort vielleicht nur die hälfte der Language Keys mit Übersetzung eingetragen wurden ...