Please enable java script to visit.
NOTEBOOK
HOMEPHP / MySQLJS / HTMLWXappPythonC++Blender其他
PHP 将数据自动读取/写入本地文件(支持数组) - NOTEBOOK
PHP 将数据自动读取/写入本地文件(支持数组)
PHP / MySQL
Posted on 2022-12-23
摘要 : PHP 将数据自动读取/写入本地文件(支持数组)
自动将数组转成字符串,写入本地文件,读取时自动恢复成数组。
默认明文储存,可以选择转码成base64格式来储存。
// 2022-12-06
// 自动读取或写入到文件。读取时。自动解码,自动转数组。
// 写入数组到文件中 新版本 只有 $file:读取。 $encrypt = 0 不加密, =1加密写入,
// 非数据库,所以不需要处理 英文字符实体化 和 addslashes() 函数
function auto_file($file,$data=false,$encrypt='0'){
if($data===false){ // 只读
if(!file_exists($file)){ return null;}
$data = file_get_contents($file); // 读取
if(!$data){ return null;}
$data = explode('::::',$data,2);
$result = $data[1]; unset($data[1]);
if(strstr($data[0],'E')){
$result = destr4($result); // 解密函数
}
if(strstr($data[0],'A')){
@eval( "\$result={$result};" ); // 恢复成数组
}
return $result;
}else{ // 有值或空值。写入
if(is_array($data)){
$data = var_export($data,true);
$data = del_extra_strings_form_VarExport($data); // 去掉多余的空行空格
$mark.= 'A';
}
if($encrypt){
$data = enstr4($data); // 加密函数
$mark.= 'E';
}
file_put_contents($file, $mark.'::::'.$data);
return 'done';
}
}


❱ 删除 字符串化 产生的多余字符删掉:空格、换行

// 删除 字符串化 产生的多余字符删掉。 空格、换行 //更快 2022-12-06
function del_extra_strings_form_VarExport($data){
$search = array("/\n* *array *\( *\n* */","/ *=> */","/,\n */");
$replace = array('array(','=>',',');
return preg_replace($search, $replace, $data);
}


PHP 快速加密 base64 转码 + 字符交换密码本