Heim >Backend-Entwicklung >PHP-Tutorial >Besprechen Sie die YII2-Entwicklung mehrsprachiger dynamischer Website-Lösungen
Gibt es neben der Verwendung mehrerer Sätze von Datentabellenlösungen noch andere Lösungen? Es muss sichergestellt werden, dass alle aus der Datenbank gelesenen Daten mehrsprachig sind.
Gibt es neben der Verwendung mehrerer Sätze von Datentabellenlösungen noch andere Lösungen? Es muss sichergestellt werden, dass alle aus der Datenbank gelesenen Daten mehrsprachig sind.
Es ist zu selten, mehrere Sätze von Datentabellen zu verwenden. Im Allgemeinen werden Sprachdateien verwendet ... Die Datenbank kann nur Schlüssel speichern und diese dann automatisch in Übersetzungsschlüsselwörter umwandeln, z. B. Kategorietabelle
category.id = 1, Kategorie .name = 'Demo', Kategorie.slug = Demo, Kategorie.meta = 'Es ist eine Demo'
Entsprechende Übersetzungsdatei
category_id_1_name = 'Demo'
category_id_1_meta = 'Dies ist eine Demo '
Bei Bedarf können Sie die Sprachdateiverwaltungsseite selbst entwickeln, aber im Allgemeinen reicht ein Editor ähnlich wie PO aus.
Natürlich können einige Dinge nicht auf diese Weise verarbeitet werden, z. B. Dokumente, die zusätzliche Sprachfelder erfordern, anstatt neue Tabellen zu erstellen. Die Artikeltabelle enthält beispielsweise ID, Sprache, Titel, Inhalt usw. und die Liste der verschiedenen Dokumente wird bei der Anzeige automatisch nach der Sprache gefiltert.
Zusammenfassend lässt sich sagen, dass bei der einfachen Übersetzung Sprachdateien verwendet werden, bei komplexen Daten Sprachfelder hinzugefügt werden und Inhalte in verschiedenen Sprachen als mehrere Datensätze verwaltet werden.
Was „Alle aus der Datenbank gelesenen Daten sind mehrsprachig“ betrifft, ist diese Lösung zu ermüdend, die Datenbank steht unter großem Druck, der Datenpflegeaufwand ist ebenfalls groß und es mangelt ihr an Flexibilität. Normalerweise denken wir, dass die Übersetzung eine Lösung ist, die vom Frontend verwendet wird, um die Interaktion zu optimieren, und nicht die Arbeit der Datenbank. Zu ähnlichen Problemen gehören die Währungsumrechnung, das Zahlenformat und das Datumsformat. Sind Sie auf eine Datenbank angewiesen? Ein neues Produkt erstellen und Preise in 3 verschiedenen Formaten speichern? Ich fühle mich müde, wenn ich nur daran denke.