English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

php-Beispielcode für die Klassifizierung von hochgeladenen Dateien

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(在发送邮件时,请将#替换为@进行举报,并提供相关证据。一经查实,本站将立即删除涉嫌侵权内容。)

Gefällt mir