Php 优化国际化脚本,是我做出的好选择吗?
我将继续为我的项目开发本地化文件,我不确定我是否做了一个好的选择Php 优化国际化脚本,是我做出的好选择吗?,php,optimization,localization,internationalization,Php,Optimization,Localization,Internationalization,我将继续为我的项目开发本地化文件,我不确定我是否做了一个好的选择 <?php $translation= array( "sentence" => array ("fr" => "phrase", "it" => "frase") ); function _($toTranslate = '', $lang = 'en'){ if($toTranslate != ''){ if(!array_key_exists($toTransla
<?php
$translation= array(
"sentence" => array ("fr" => "phrase", "it" => "frase")
);
function _($toTranslate = '', $lang = 'en'){
if($toTranslate != ''){
if(!array_key_exists($toTranslate[$lang], $translation))
return $toTranslate;
else
return ${$lang}[$toTranslate];
}
}
?>
我显然不知道我是否做得很好。不够好
$config['language'] = 'de';
您还可以从GET参数加载语言代码:
$config['language'] = htmlspecialchars($_GET['lang']);
请记住检查语言文件是否存在(file\u exists()
)
在引导代码中,加载语言文件(之前请检查)
当您需要语言资源字符串时,您可以调用您的“\”函数,现在它应该是
function _($LANG_RES_ID) {
global $lang;
return isset($lang[$LANG_RES_ID] ? $lang[$LANG_RES_ID] : $LANG_RES_ID;
}
2使用gettext
请参见php.net:
此外,许多开源应用程序都是很好的研究案例,例如phpMyAdmin。谢谢。如果我想翻译,我有echo(“欢迎”);在我的fr.inc.php$_lang['WELCOME']=“Bienvenue”;
function _($LANG_RES_ID) {
global $lang;
return isset($lang[$LANG_RES_ID] ? $lang[$LANG_RES_ID] : $LANG_RES_ID;
}