('一些文字')呢?

阅读关于Kohana模板并看到我从未见过的东西:

$this->template->title = __('Welcome To Acme Widgets');

__('Text')是什么意思? 它是什么? 它有什么作用?


在Kohana(版本3)中,函数是在system / base.php中定义的,并且是一种便利功能,用于帮助(如其他答案所述)国际化。 您提供一个字符串(可选地,有些占位符将值替换为完成的文本),然后解释该字符串,并在必要时返回翻译。

与其他答案中的假设相反,这不使用gettext。

一个非常基本的例子是(这个特殊的字符串已经在Kohana中翻译成英文,西班牙文和法文):

// 1. In your bootstrap.php somewhere below the Kohana::init line
I18n::lang('fr');

// 2. In a view
echo __("Hello, world!"); // Bonjour, monde!

双'__'用于CakePHP中的本地化(以及其他可能的框架)

http://book.cakephp.org/view/163/Localization-in-CakePHP


它是string gettext ( string $message ) :http://php.net/manual/en/function.gettext.php

如果在翻译表中找到翻译的字符串,则返回翻译的字符串;如果找不到,则返回提交的消息。

__()只是它的别名。 所以__("some text")等同于gettext("some text")

编辑:其实如果它是两个下划线比它不是gettext()。 gettext()的别名是一个下划线。

第二次编辑:它看起来像__()可能是gettext()的另一个别名。 与_()略有不同。 请参阅此处:http://groups.google.com/group/cake-php/browse_thread/thread/9f501e31a4d4130d?pli=1

第三次也是最后一次编辑:这里有一篇文章更详细地解释它。 看起来它不是一个内置的函数,而是通常在很多框架中添加的东西。 它本质上是gettext的别名 - 它执行相同的功能。 但是,它不是一个直接的别名(我不认为)。 它在框架中实现并且是特定的。 它搜索并返回给定字符串的本地化或翻译。 欲了解更多信息,请参阅此博客文章:http://www.eatmybusiness.com/food/2007/04/13/what-on-earth-does-a-double-underscore-then-parenthesis-mean-in-php- __ / 7 /

链接地址: http://www.djcxy.com/p/9967.html

上一篇: ('Some text') do?

下一篇: Backslash syntax when creating objects