Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
file.php
<?php
class File{
private $_dir;
const EXT='.txt';
public function __construct()
{
$this->_dir=dirname(__FILE__).'/files/';
}
public function cacheData($key,$value='',$path=''){
$filename=$this->_dir.$path.$key.self::EXT;
if($value!==''){//將value值寫入緩存
if(is_null($value)){
return @unlink($filename);
}
$dir=dirname($filename);
if(!is_dir($dir)){
mkdir($dir,0777);
}
return file_put_contents($filename,json_encode($value));
}
if(!is_file($filename)){
return false;
}else{
return json_decode(file_get_contents($filename),true);
}
}
}
test.php
<?php
require_once "file.php";
$data=array(
'id'=>1,
'name'=>'singwa',
'type'=>array(4,5,6),
'test'=>array(1,45,67=>array(123,'tsysa'),),
);
$file=new File();
//if($file->cacheData('index_mk_cache',$data)){
//var_dump($file->cacheData('index_mk_cache'));exit;
/**
* array
'id' => int 1
'name' => string 'singwa' (length=6)
'type' =>
array
0 => int 4
1 => int 5
2 => int 6
'test' =>
array
0 => int 1
1 => int 45
67 =>
array
0 => int 123
1 => string 'tsysa' (length=5)
*/
//echo "success";
//}else{
// echo "error";
// }
if($file->cacheData('index_mk_cache')) {
echo 'delete success';
}else{
echo 'delete failed';
}
@”錯誤控制運算符前綴甚至使導(dǎo)致腳本終止的嚴(yán)重錯誤的錯誤報告也失效殖演。這意味著如果在某個不存在或類型錯誤的函數(shù)調(diào)用前用了“@”來抑制錯誤信息蹋凝,那腳本會沒有任何跡象顯示原因而死在那里飒货。