上传驱动有很多种:ftp(例如京东、百度等大型网站),网站和图片不在一个服务器,这时便用到了上传驱动
ThinkPHP下有几类,ThinkPHP\Library\Think\Upload\Driver目录下:BCS、Ftp、Local、Qiniu、Sae、Upyun等
新浪用的Sae,一般默认Local上传到本机
为什么TP默认的上传驱动类是load.class.php呢?我们回头看一下TP上传主类中的 设置上传驱动 方法!
/**
* 设置上传驱动
* @param string $driver 驱动名称
* @param array $config 驱动配置
*/privatefunction setDriver($driver =null, $config =null){//看这里!也就是说 如果$driver为空 默认就是 C('FILE_UPLOAD_TYPE')
$driver = $driver ?:($this->driver ?: C('FILE_UPLOAD_TYPE'));
$config = $config ?:($this->driverConfig ?: C('UPLOAD_TYPE_CONFIG'));
$class = strpos($driver,'\\')? $driver :'Think\\Upload\\Driver\\'.ucfirst(strtolower($driver));
$this->uploader =new $class($config);if(!$this->uploader){
E("不存在上传驱动:{$name}");}}
再返回来看一下配置文件里的配置项: