[英]PHP string literals file…good practice?
我一直在尝试为 PHP 创建一个字符串文字文件,因此我可以将所有字符串保存在一个文件中。
我想知道这样做是否是一种好习惯:
class Literals
{
const String1 = "Hello";
const String2 = "World!";
//... (up to 100+ literals)...
}
然后在我的代码中的某个地方我可以这样称呼它:
$hello = Literals::String1;
这是好习惯吗?
这取决于你要对字符串做什么。 如果您要将它们显示给用户,那么可以肯定,这是一种进行国际化的简单方法,尽管如果您要做很多事情,您会想看看更高级的东西。 如果您只是要将它们用于关联数组键、数据库列名或其他内部事物,那么不,只需将它们保持内联即可。
希望您没有真正称它们为 String1...StringN :)
如果要进行本地化,我个人更喜欢这个(Apple 使用的):
在代码中使用类似的东西:
<h1><?php localize("Homepage","String for the homepage") ?></h1>
.
function localize($key,$help='') {
//do a lookup of the key and if not found use the key itself
}
然后您可以使用解析器查找所有字符串并创建参考翻译:
$strings = array(
/** String for the homepage */
'Homepage' => 'Homepage'
);
这样做的好处是主要语言版本将始终有效,并且可以在需要时添加其他翻译。 它的缺点是您需要一个解析器来查找所有字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.