error

class File{
private $_dir;
const EXT='.txt';//扩展名常量
public function __construct(){//构造函数
$this->_dir=dirname(_FILE_).'/files/';//获取当前目录 再建立files文件夹
}
public function cacheData($key,$value='',$path=''){//参数$key缓存文件文件名 $value缓存数据 $path路径
$filename=$this->_dir.$path.$key.self::EXT;
if($value!==''){//将value值写入缓存
$dir=dirname($filename);//返回$filename路径中的目录部分
if(!is_dir($dir)){
mkdir($dir,0777);
}
//file_put_contents()函数把字符串写入文件中(数组形式的不能为多维数组)
//返回写入到文件内数据的字节数
file_put_contents($filename,json_encode($value));//可以json化 也可以序列化
}
}
}为什么呢