Dies ist eine Erweiterung für ComfypHP -Framework, um die Funktion mit mehreren Sprachen zu aktivieren.
├── src
│ └── langs
│ ├── en
│ │ └── index.json
│ ├── zh-Hans
│ │ └── index.json
│ └── zh-Hant
│ └── index.json
└── comfy.lang.config.php
Da dies eine Erweiterung für ComfypHP ist, sind alle Abhängigkeiten, die in ComfypHP und ComfypHP selbst erforderlich sind, für die Verwendung dieser Erweiterung erforderlich.
Um diese Erweiterung zu verwenden, können Sie sie mit Composer installieren.
composer require comfyphp/lang ComfyPHP sucht nach allen Sprachen auf den Einstellungen CONFIG_LANG_PATH in comfy.lang.config.php .
Sie können die folgende Zeile in irgendwo hinzufügen und später in jede Dateien importieren. Hier nehmen wir zum Beispiel src/pages/_init.php :
$ lang = new ComfyPHP Lang ();Erstellen Sie separate JSON -Dateien für jede Sprache, die Sie unterstützen möchten. Und platzieren Sie diese Dateien in den Ordner Sprachen. Erstellen Sie beispielsweise die folgenden Dateien:
src/langs/en/index.json :
{
"hello" : " Hello! "
} src/langs/en/special.json :
{
"setting" : {
"title" : " Settings " ,
"info" : " This is the Settings page. "
}
}Fügen Sie in den Dateien, in denen Sie die Erweiterung mehrerer Sprachen verwenden möchten, den folgenden Code hinzu, um die Datei zu verlangen, die Sie in der Lang -Erweiterung initialisiert haben, und ermöglichen die Verwendung der Funktion diese Sprachen:
$ root = $ GLOBALS [ " ROOT " ];
$ pagePath = $ GLOBALS [ " CONFIG_PAGE_PATH " ];
require_once " $ root / $ pagePath /_init.php " ;
$ l = $ lang -> useLanguage (); Sie können jetzt Sprachzeichenfolgen in Ihrem Code verwenden. Wenn Sie $l("hello") schreiben, wird in der Erweiterung nach dem Schlüssel in der Datei index.json nach dem hello suchen. Wenn Sie $l("special:setting.info") schreiben, sucht die Erweiterung nach den info unter dem setting in der special.json -Datei.
echo $ l ( " hello " );
echo $ l ( " special:setting.info " ); $ GLOBALS [ " CONFIG_LANG_PATH " ];
$ GLOBALS [ " CONFIG_LANG_PROVIDER " ];
$ GLOBALS [ " CONFIG_LANG_FALLBACK " ];
$ GLOBALS [ " CONFIG_LANG_PARAM " ];
$ GLOBALS [ " CONFIG_LANG_PARAM_NAME " ];
$ GLOBALS [ " CONFIG_LANG_COOKIE " ];
$ GLOBALS [ " CONFIG_LANG_COOKIE_NAME " ];
$ GLOBALS [ " CONFIG_LANG_COOKIE_DOMAIN " ];
$ GLOBALS [ " CONFIG_LANG_COOKIE_TIME " ];Dieses Projekt ist mit MIT lizenziert. Hier finden Sie die Lizenzdatei.