我使用的是CodeIgniter 3,我希望扩展默认的语言助手。
默认情况下,CodeIgniter允许使用函数lang(language_key)从语言文件中获取一个值,但我的语言文件不同。
默认语言文件:
$lang = [
'MONTH_JANUARY' => 'January',
'MONTH_FEBRUARY' => 'February',
];我的档案:
$lang = [
'MONTH' => [
'JANUARY' => 'January',
'FEBRUARY' => 'February',
],
];我想要创建一个爆炸的辅助函数。
例如,使用lang('MONTH.JANUARY'),它将寻找$lang‘’MONTH‘并返回’一月‘。
最好的办法是什么?
发布于 2018-02-19 13:57:10
使用引用遍历数组
function lang($string) {
$lang = [
'MONTH' => [
'JANUARY' => 'January',
'FEBRUARY' => 'February',
],
];
$p = &$lang;
foreach(explode('.', $string) as $x) {
if(! isset($p[$x])) {
// key does not exist - do something
}
else {
$p = &$p[$x];
}
}
return $p;
}
echo lang('MONTH.JANUARY'); // 'January'https://stackoverflow.com/questions/48866595
复制相似问题