我使用以下函数替换前端页面中的短语。
它更容易维护并且似乎消耗更少的内存,但性能似乎以某种方式降低。
所以一般来说这是处理静态文本的“好方法”吗?
我还没有找到更好的方法。
function get($tag,$hl = false) { // Language based Textstring
$tag = strtolower($tag);
$rtag = urlencode($tag);
global $_SESSION;
if (!$hl) {
if (!isset($_SESSION['hl'])) { // set Default language to English
$_SESSION['hl'] = "en";
}
$hl = $_SESSION['hl']; // set Session language if none given
}
if (!apc_exists('hl'.$hl.$rtag)) {
global $db,$APC,$_SESSION;
$r = $db->fetchRow("select $hl from language where tag='$tag' limit 1;");
if (($r)&&(strlen($r[$hl]) > 2)) {
apc_add('hl'.$hl.$rtag,$r[$hl],$APC['time']['Language']['get']);
return $r[$hl];
}
else {
return "$". $tag;
}
}
else { // data avaiable ... get cache
return apc_fetch('hl'.$hl.$rtag);
}
}