Wie laufen oder laden .po/.mo-Dateien für die Lokalisierung in php
Habe ich poedit installiert und läuft meine Datei über es, es schafft .po und .mo-Dateien für Sie. Aber ich habe ein problem, zu laden und verwenden Sie diese Dateien für die übersetzung meines Textes. Ich weiß nicht, wie zu laden oder öffnen Sie die übersetzten Dateien und die übersetzten Inhalte.
Kann mir jemand helfen über diese. Ich habe versucht, jede mögliche Quelle aber nicht gelang.
Sie sind eine weitere einfache Lösung für die übersetzung von PHP-websites. Siehe phpcs.com/codes/..., Dies ist die beste Lösung
InformationsquelleAutor Raheel | 2012-01-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zunächst muss man sich informieren, PHP die locale und die Domäne, die Sie verwenden.
In diesem Fall bin ich mit einer dänischen übersetzung und eine Datei namens mycatalog.mo (und .po). Diese Dateien befinden sich (von der Wurzel) hier: locale/de_de/LC_MESSAGES/mycatalog.mo/po
Um zu zeigen, Ihre übersetzung, tun Sie dies:
_(); ist ein alias von gettext(); Die intelligente Sache über gettexts ist, dass wenn es keine übersetzung, die Sie nicht haben eine hässliche Sprache code wie "MSG_HELLO_WORLD" in der Benutzeroberfläche, sondern eine bessere alternative: Einfach den plain English text.
In den Nachrichten.po-Datei müssen Sie alle Nachrichten, die (groß-Kleinschreibung beachten und auch hinsichtlich der verwendeten Kommas, Punkte, Doppelpunkte, etc.) auf diesem Formular:
Wenn Sie Hinzugefügt haben, können Sie diese zu Ihrem .po-Datei, öffnen Sie diese Datei in poedit, drücken Sie auf "Speichern" und es generiert einen .mo-Datei. Diese Datei ist hochgeladen im selben Ordner wie die .po-Datei (in der Regel so etwas wie \locale\de_de\LC_MESSAGES\ aus dem script root)
Übersetzen dynamische/variable Inhalte, die Sie verwenden können - unter anderem - sprintf, in dieser Weise:
In diesem Fall die %s kommen wird .po-Datei; Wenn Sie mit dem übersetzten string (enthält %s), sprintf wird, stellen Sie sicher, ersetzen Sie die %s und der variable Inhalt. WENN die variable übersetzt werden müssen, können Sie dies tun:
Dann brauchen Sie nicht einen vollständigen Satz für jede Farbe, aber Sie bekommen noch die Farben übersetzt.
Es ist wichtig zu beachten, dass das erste mal ein .mo läuft auf dem server zwischengespeichert wird - und es keine Möglichkeit gibt, entfernen Sie diese Datei aus dem cache ohne Neustart (Apache oder dergleichen sich sollte genug sein). Dies bedeutet, dass alle änderungen, die Sie an die .mo nach dem ersten mal es verwendet wird, nicht wirksam werden. Es gibt eine Reihe von hacks um dies zu umgehen, aber ehrlich gesagt, sind Sie meist nicht sehr hübsch (Sie kopieren die .mo, fügen Sie die Zeit, die() dahinter und dann importieren und cache es wieder). Dieser Letzte Absatz ist nur von Bedeutung, wenn Sie nicht gehen, zu übersetzen, die ganze Sache auf einmal, sondern in Abschnitten.
Wenn Sie möchten, erstellen Sie Ihre eigenen übersetzungs-tool irgendwann, dieses tool hilft Ihnen, zu konvertieren .po-zu .mo mit PHP:
http://www.josscrowcroft.com/2011/code/php-mo-convert-gettext-po-file-to-binary-mo-file-php/
Ich verwende xampp und microsoft windows xp.
Wie funktioniert Ihre .po-Datei Aussehen?
was bedeuten die mit Blick .po-Datei?? wenn ich Doppelklick auf die Datei öffnete in poedit und zeigen, dass mein string echo in der gettext-Funktion.nichts mehr...
PHP Version 5.2.9
InformationsquelleAutor
Sehen (und entdecken) http://php.net/manual/en/book.gettext.php. Gibt es user-Kommentare auf dieser Seite, sollte Ihnen eine Idee, wie man procede.
Auch, deine Frage ist ein Duplikat von Erhalten Sie übersetzungen aus .po oder .mo-Datei
InformationsquelleAutor simshaun