首页 > 代码库 > Thinkphp上传文件

Thinkphp上传文件

 1 //1.文件上传Onethink使用$uploads->upload()方法会出现bug,使用$uploads->uploadOne()方法 2 $config = array( 3     ‘maxSize‘ => 5242880, 4     ‘exts‘ => array(‘jpg‘,‘png‘,‘gif‘,‘jpeg‘,‘doc‘,‘xls‘,‘ppt‘,‘docx‘), 5     ‘rootPath‘ => ‘./Public/‘, 6     ‘savePath‘ => ‘Admin/file/‘, 7     ‘saveName‘ => ‘‘, 8     ‘autoSub‘ => true, 9     ‘subName‘ => array(‘date‘,‘Ymd‘),10     );11 $uploads = new \Think\Upload($config);12 $result = $uploads->uploadOne();13 14 //2.上传中文名文件会出现乱码15 \Think\Upload\Driver\Local.class.php  文件  83行 改为16 if (!move_uploaded_file($file[‘tmp_name‘],iconv(‘utf-8‘,‘gb2312‘,$filename)))17 18 iconv()函数:iconv("utf8","gb2312",$string)//将字符串string  编码由utf8转变成gbk;19 20 //3.GB2312和GBK的区别21 GBK:       汉字国标扩展码,基本上采用了原来GB2312-80所有的汉字及码位,并涵盖了原Unicode中所有的汉字20902,总共收录了883个符号,   21003个汉字及提供了1894个造字码位。   Microsoft简体版中文Windows   95就是以GBK为内码,又由于GBK同时也涵盖了Unicode所有CJK汉字,所以也可以和Unicode做一一对应。22 23 GB码,全称是GB2312-80《信息交换用汉字编码字符集 基本集》,1980年发布,是中文信息处理的国家标准,在大陆及海外使用简体中文的地区(如新加坡等)是强制使用的唯一中文编码。P-Windows3.2和苹果OS就是以GB2312为基本汉字编码, Windows 95/98则以GBK为基本汉字编码、但兼容支持GB2312。GB码共收录6763个简体汉字、682个符号,其中汉字部分:一级字3755,以拼音排序,二级字3008,以偏旁排序。该标准的制定和应用为规范、推动中文信息化进程起了很大作用。24 25 GBK编码是中国大陆制订的、等同于UCS的新的中文编码扩展国家标准。GBK工作小组于1995年10月,同年12月完成GBK规范。该编码标准兼容GB2312,共收录汉字21003个、符号883个,并提供1894个造字码位,简、繁体字融于一库。

 

Thinkphp上传文件