|
Define (' Cache_root ', './');
Include_once ('./cache.func.php ');
$file = ' Qzp ';
$cacheFile = Getcachefilebyid ($file, ' info/');
Print_r (Readcache ($cacheFile));
$info = Array (
' username ' => ' qzp ',
' Area_name ' => ' admin ',
' Mp_name ' => ' 1234 ',
' Gh_name ' => ' 5678 ');
Writecache ($cacheFile, $info);
cache.func.php file
function Arrayeval ($array, $level = 0) {
$space = ';
for ($i = 0; $i <= $level; $i + +) {
$space. = "T";
}
$evaluate = "Arrayn$space (n");
$comma = $space;
foreach ($array as $key => $val) {
$key = is_string ($key)? "Addcslashes ($key, ' \ ').": $key;
$val =!is_array ($val) && (!preg_match ("/^-?[ 1-9]d*$/", $val) | | strlen ($val) > 12)? "Addcslashes ($val, ' \ ').": $val;
if (Is_array ($val)) {
$evaluate. = "$comma $key =>". Arrayeval ($val, $level + 1);
} else {
$evaluate. = "$comma $key => $val";
}
$comma = ", n$space";
}
$evaluate. = "N$space)";
return $evaluate;
}
function Getcachefilebyid ($id, $pre = ' info/', $md 5=true) {
if ($MD 5) {
$MD 5id = MD5 ($id);
return cache_root. ' /'. $pre. substr ($md 5id,0,2). ' /'. substr ($md 5id,2,2). ' /'. $id;
}else{
return cache_root. ' /'. $pre. $id;
}
}
function Readcache ($filename, $time =0) {
if ($datas = @file_get_contents ($filename)) {
$datas = Unserialize ($datas);
if ($time < 1 | | (Time ()-$datas [' Time '] < $time)) {
return $datas [' data '];
}
}
return false;
}
function Writecache ($filename, $data) {
MakeDir (DirName ($filename));
if ($handle = fopen ($filename, ' w+ ')) {
$datas = Array (' Data ' => $data, ' time ' =>time ());
Flock ($handle, LOCK_EX);
$rs = fputs ($handle, serialize ($datas));
Flock ($handle, lock_un);
Fclose ($handle);
if ($rs!==false) {
return true;
}
}
return false;
}
function MakeDir ($path)
{
if (! file_exists ($path)) {
MakeDir (DirName ($path));
if (! mkdir ($path, 0777))
Die (' Unable to create folder '. $path);
}
} |