[英]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.