0
我想爲我的應用程序構建一個配置解析器,我今天安裝了APC,但是每次我嘗試在存儲中放入一個序列化對象時,它都沒有進入,也沒有進入。 (我正在使用apc.php在PHP 5.3.16 [我的開發環境]上檢查我的版本[3.1.8-dev],所以我確信數據不在緩存中)。這就是我如何將數據傳遞到cacher的:PHP存儲對象時的APC問題
// The data before the caching
array (
'key' => md5($this->filename),
'value' => serialize($this->cfg)
);
// The caching interface
function($argc){
$key = $argc['key'];
Cache\APC::getInstance()->set($key,$argc['value']);
}
// The caching method described above
public function set($key, $val) {
if (apc_exists($key)) {
apc_delete ($key);
return apc_store($key, $val);
}
else
return false;
}
// the constructor of the configuration class.
// It 1st looks for the configuration in
// the cache if it is not present performs the reading from the file.
public function __construct($filename = '/application/config/application.ini',
$type = self::CONFIG_INI)
{
if (defined('SYSTEM_CACHE') && SYSTEM_CACHE === 'APC'){
$key = md5($filename);
$cfg = APC::getInstance()->get($key);
if (!empty($cfg)) {
print "From Cache";
$this->cfg = unserialize($cfg);
return;
} else {
print "From File";
}
}
}
我做了一些測試並沒有使用MD5()鍵(我在寫這個問題想)有問題,也不與APC本身。我真的被困在這一塊,沒有什麼奇怪的日誌,所以如果任何人可以給我至少一些方向將非常感激。
在此先感謝!