CakePHP
  • 文档
    • 书籍
    • API
    • 视频
    • 报告安全问题
    • 隐私政策
    • 标识和商标
  • 商业解决方案
  • 商品
  • 公路旅行
  • 团队
  • 社区
    • 社区
    • 参与进来
    • 问题(Github)
    • 烘焙坊
    • 精选资源
    • 培训
    • 聚会
    • 我的 CakePHP
    • CakeFest
    • 新闻通讯
    • 领英
    • 优酷
    • 脸书
    • 推特
    • Mastodon
    • 帮助和支持
    • 论坛
    • Stack Overflow
    • IRC
    • Slack
    • 付费支持
CakePHP

C CakePHP 5.1 Chiffon API

  • 项目
    • CakePHP
      • CakePHP
      • Chronos
      • Elastic Search
      • 队列
  • 版本
    • 5.1
      • 5.1
      • 5.0
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

命名空间

  • 全局
  • Cake
    • 缓存
    • 集合
    • 命令
    • 控制台
    • 控制器
    • 核心
    • 数据库
    • 数据源
    • 错误
    • 事件
    • 表单
    • HTTP
    • 国际化
      • 异常
      • 格式化器
      • 中间件
      • 解析器
    • 日志
    • 邮件
    • 网络
    • ORM
    • 路由
    • 测试套件
    • 实用工具
    • 验证
    • 视图

类 MessagesFileLoader

一个通用的翻译包工厂,它将根据文件扩展名和包名称加载翻译文件。

此类是一个可调用对象,因此可以用作包加载器参数。

命名空间: Cake\I18n

属性摘要

  • $_extension protected
    string

    扩展名。

  • $_locale protected
    string

    为给定包加载的区域设置。

  • $_name protected
    string

    包(域)名称。

  • $_plugin protected
    string|null

    包(域)插件

方法摘要

  • __construct() public

    创建一个翻译文件加载器。要加载的文件对应于以下规则

  • __invoke() public

    加载翻译文件并解析它。返回一个翻译包实例,其中包含从文件中加载的消息。

  • translationFile() protected
  • translationsFolders() public

    返回应根据区域设置和包名称查找文件的文件夹。

方法详细

__construct() ¶ public

__construct(string $name, string $locale, string $extension = 'po')

创建一个翻译文件加载器。要加载的文件对应于以下规则

  • 区域设置是 resources/locales/ 目录下的一个文件夹,如果找不到该文件夹,将使用回退。
  • $name 对应于要加载的文件名
  • 如果有一个加载的插件,其名称与 $name 的下划线版本相同,则将从该插件加载翻译文件。

示例

加载并解析 resources/locales/fr/validation.po

$loader = new MessagesFileLoader('validation', 'fr_FR', 'po');
$package = $loader();

加载并解析 resources/locales/fr_FR/validation.mo

$loader = new MessagesFileLoader('validation', 'fr_FR', 'mo');
$package = $loader();

加载 plugins/MyPlugin/resources/locales/fr/my_plugin.po 文件

$loader = new MessagesFileLoader('my_plugin', 'fr_FR', 'mo');
$package = $loader();

Vendor prefixed plugins are expected to use `my_prefix_my_plugin` syntax.
参数
string $name

翻译包的名称(域)。

string $locale

要加载的区域设置,这将映射到系统中的一个文件夹。

string $extension optional

要使用的文件扩展名。这也将映射到消息解析器类。

__invoke() ¶ public

__invoke(): Cake\I18n\Package|false

加载翻译文件并解析它。返回一个翻译包实例,其中包含从文件中加载的消息。

返回
Cake\I18n\Package|false
抛出
Cake\Core\Exception\CakeException
如果找不到指定文件扩展名的文件解析器类。

translationFile() ¶ protected

translationFile(list<string> $folders, string $name, string $ext): string|null
参数
list<string> $folders

文件夹

string $name

文件名

string $ext

文件扩展名

返回
string|null

translationsFolders() ¶ public

translationsFolders(): list<string>

返回应根据区域设置和包名称查找文件的文件夹。

返回
list<string>

属性详细

$_extension ¶ protected

扩展名。

类型
string

$_locale ¶ protected

为给定包加载的区域设置。

类型
string

$_name ¶ protected

包(域)名称。

类型
string

$_plugin ¶ protected

包(域)插件

类型
string|null
OpenHub
Pingping
Linode
  • 商业解决方案
  • 展示
  • 文档
  • 书籍
  • API
  • 视频
  • 报告安全问题
  • 隐私政策
  • 标识和商标
  • 社区
  • 参与进来
  • 问题(Github)
  • 烘焙坊
  • 精选资源
  • 培训
  • 聚会
  • 我的 CakePHP
  • CakeFest
  • 新闻通讯
  • 领英
  • 优酷
  • 脸书
  • 推特
  • Mastodon
  • 帮助和支持
  • 论坛
  • Stack Overflow
  • IRC
  • Slack
  • 付费支持

使用 CakePHP API 文档 生成