存储驱动完成了不同环境下面的文件存取操作,也是ThinkPHP支持分布式和云平台的基础。 默认的存储驱命名空间位于`Think\Storage\Driver`,每个存储驱动必须继承Think\Storage,并且实现下列接口方法(具体参数可以参考现有的存储驱动类库): | 驱动方法 | 方法说明 | |-----|-----| | 架构方法 | __construct($config='') | | 读取文件内容 | read($filename,$type='') | | 写文件 | put($filename,$content,$type='') | | 文件追加 | append($filename,$content,$type='') | | 加载文件 | load($filename,$vars=null,$type='') | | 判断文件是否存在 | has($filename,$type='') | | 删除文件 | unlink($filename,$type='') | | 读取文件信息 | get($filename,$name,$type='') | 其中type参数是为了区分不同的读写场景而设置的。 目前使用到的场景包括 runtime(用于编译缓存的文件操作)、html(用于静态缓存的文件操作)和F(用于F函数的文件操作)。 要使用自己定义的存储驱动的话,需要在应用入口文件定义: ~~~ define('STORAGE_TYPE', 'MyStorage'); ~~~ > 存储类型的特殊性决定了我们只能在入口文件中改变存储类型