Heim > Backend-Entwicklung > PHP-Tutorial > Zend Framework上传文件重命名

Zend Framework上传文件重命名

WBOY
Freigeben: 2016-07-25 09:11:32
Original
1057 Leute haben es durchsucht
  1. //实例化文件上专类
  2. $fName=$this->_request->getPost('fName');
  3. $adapter = new Zend_File_Transfer_Adapter_Http();
  4. //存放上传文件的文件夹
  5. $adapter->setDestination('/opt/lampp/htdocs/blog/upload');
  6. //上传配置
  7. $adapter
  8. ->addValidator ( 'Extension', false, $configs['extension'])//文件格式限制
  9. ->addValidator('Size', false, array('min' =>floatval($configs['minsize']),
  10. 'max' => floatval($configs['maxsize'])))//设置上传文件的大小在1-2M之间
  11. ->addValidator ( 'Count', false, array('min' => intval($configs['mincount']),
  12. 'max' => intval($configs['maxcount'])) );//上传文件数量
  13. //重命名配置
  14. $fileInfo = $adapter->getFileInfo();//获取基本配置
  15. $extName=$this->getExtension($fileInfo);//获取扩展名
  16. $filename=md5(time()+$fileInfo['fFile']['name']).'.'.$extName;//重命名
  17. $adapter->addFilter('Rename', array('target' => $filename, 'overwrite' => true));//执行重命名
  18. //返回上传后出现在信息
  19. if (!$adapter->receive())
  20. {
  21. $messages = $adapter->getMessages ();//检测
  22. //Zend_Debug::dump($messages);
  23. $message='';
  24. if(is_array($messages))
  25. {
  26. foreach($messages as $k=>$v)
  27. {
  28. $message.=$k.':'.$v.'
    ';
  29. }
  30. }
  31. else
  32. {
  33. $message=$messages;
  34. }
  35. }
  36. else
  37. {
  38. $this->view->message='上传成功!';
  39. }
复制代码
  1. /**
  2. * 获取文件扩展名
  3. * @param String $name 文件名词
  4. * @author
  5. */
  6. public function getExtension ($name)
  7. {
  8. $fname='';
  9. if($name)
  10. {
  11. foreach ($name as $val)
  12. {
  13. $fname=$val['name'];
  14. }
  15. $exts = @split("[/\\.]", $fname) ;
  16. $n = count($exts)-1;
  17. $exts = $exts[$n];
  18. return $exts;
  19. }
  20. }
复制代码


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage