您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 茂名分类信息网,免费分类信息发布

php下把数组保存为文件格式的实例应用_PHP教程

2024/3/20 4:37:28发布41次查看
我使用过两种办法:
第一种是数组序列化,简单,但是调用时比较麻烦一些;第二种是保存为标准的数组格式,保存时麻烦但是调用时简单。
第一种方法:
php代码
复制代码 代码如下:
$file=./cache/file.cache;
$array = array(color => array(blue, red, green),
size => array(small, medium, large));
//缓存
file_put_contents($file,serialize($array));//写入缓存
//读出缓存
$handle = fopen($file, r);
$cachearray = unserialize(fread($handle, filesize ($file)));
第二种方法:
比较复杂,先贴几个函数:
复制代码 代码如下:
//写入
function cache_write($name, $var, $values) {
$cachefile = s_root.'./data/data_'.$name.'.php';
$cachetext = ;
if(!swritefile($cachefile, $cachetext)) {
exit(file: $cachefile write error.);
}
}
//数组转换成字串
function arrayeval($array, $level = 0) {
$space = '';
for($i = 0; $i $space .= \t;
}
$evaluate = array\n$space(\n;
$comma = $space;
foreach($array as $key => $val) {
$key = is_string($key) ? '\''.addcslashes($key, '\'\\').'\'' : $key;
$val = !is_array($val) && (!preg_match(/^\-?\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 swritefile($filename, $writetext, $openmod='w') {
if(@$fp = fopen($filename, $openmod)) {
flock($fp, 2);
fwrite($fp, $writetext);
fclose($fp);
return true;
} else {
runlog('error', file: $filename write error.);
return false;
}
}
调用方法很简单:
php代码
复制代码 代码如下:
cache_write('file', 'arrayname', $array);
使用上形同标准的include格式:
php代码
复制代码 代码如下:
@include ('./data/data_cache.php');
//数组重新排序
sort($arrayname);
http://www.bkjia.com/phpjc/321137.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/321137.htmltecharticle我使用过两种办法: 第一种是数组序列化,简单,但是调用时比较麻烦一些;第二种是保存为标准的数组格式,保存时麻烦但是调用时简单...
茂名分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录