多语言PHP应用程序:最佳实践?

gwe*_*all 5 php model-view-controller performance localization internationalization

我希望得到您对我在PHP MVC Web应用程序上实现多语言支持的方式的反馈.这就是我做的:

  • 在/ app文件夹中我创建了一个/ languages文件夹,其中包含每种语言一个文件(english.php,spanish.php等)
  • 每个文件包含一系列变量,每个文件中具有相同的名称,包含要在视图中呈现的文本
  • 然后在不同的视图中回显这些变量
  • 当用户更改语言时,将更新"语言"cookie变量
  • 在每个视图的控制器中,我包含以下格式的语言文件:

包括$ _SERVER ['DOCUMENT_ROOT']."/ app/languages /".$ _COOKIE ["语言"].".PHP";

听起来很整洁.你对这种方法有任何负面想法吗?

Ric*_*haw 1

您还可以解析接受语言标头以帮助决定做什么。

Accept-Language:en-GB,en-US;q=0.8,en;q=0.6
Run Code Online (Sandbox Code Playgroud)

我的看起来就是这样。这并不是万无一失的,但它可能是一种自动设置适当 cookie 的方法。