English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Ich werde nicht lange um den heißen Brei reden und direkt den Code hier einfügen, wie folgt:
<?php /** * Datei-Upload-Klasse * @author lijiamin * @time 2017-02-17 * @email [email protected] */ class Upload{ private $allowExt = array('gif','jpg','jpeg','bmp','png','swf');//Beschränkung der Dateierweiterungen für den Datei-Upload private $maxSize = 1;//Beschränkung der maximalen Datei-Upload-Größe1M /** * Erhalten Sie die Informationen der Datei * @param str $flag Kennung der hochgeladenen Datei * @return arr Array mit Informationen über das hochgeladene Datei */ public function getInfo($flag){ return $_FILES[$flag]; } /** * Erhalten Sie das Suffix der Datei * @param str $filename Dateiname * @return str Dateierweiterung */ public function getExt($filename){ return pathinfo($filename,PATHINFO_EXTENSION); } /** * Überprüfen Sie, ob die hochgeladene Datei gültig ist * @param str $filename Dateiname * @return bool Ob die Dateierweiterung gültig ist */ private function checkExt($filename){ $ext = $this->getExt($filename); return in_array($ext,$this->allowExt); } /** * Überprüfen Sie, ob die Dateigröße die Begrenzung überschreitet * @param int size Dateigröße * @return bool Ob die Dateigröße die Begrenzung überschreitet */ public function checkSize($size){ return $size < $this->maxSize * 1024 * 1024; } /** * Zufälliger Dateiname * @param int $len Länge des zufälligen Dateinamens * @return str Zufällige Zeichenkette */ public function randName($len=6)){ return substr(str_shuffle('abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ234565789'),0,$len); } /** * Erstellen Sie den Pfad zur Datei, in die das Datei hochgeladen wird * @return str Pfad zur Datei hochladen */ public function createDir(){ //Pfad zur Datei hochladen $dir = './upload/'.date('Y/m/d',time()); //Prüfen, ob der Ordner existiert, und neu erstellen, falls nicht if(is_dir($dir) || mkdir($dir,0777,true)){ return $dir; } } /** * 文件上传 * @param str $flag 文件上传标识 * @return array 返回上传文件名、保存路径 */ public function uploadFile($flag){ if($_FILES[$flag]['name'] === '' || $_FILES[$flag]['error'] !== 0){ echo "没有上传文件"; return; } $info = $this->getInfo($flag); if(!$this->checkExt($info['name'])){ echo "不支持的文件类型"; return; } if(!$this->checkSize($info['size'])){ echo "文件大小超过限制"; return; } $filename = $this->randName().'.'.$this->getExt($info['name']); $dir = $this->createDir(); if(!move_uploaded_file($info['tmp_name'], $dir.'/'.$filename')){ echo "文件上传失败"; } return array('filename'=>$filename,'dir'=>$dir); } } } ?>
声明:本文内容来源于网络,版权归原作者所有。内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#oldtoolbag.com(在发送邮件时,请将#替换为@进行举报,并提供相关证据。一经查实,本站将立即删除涉嫌侵权内容。)