
批改狀態(tài):合格
老師批語:
Content-type 常見的值
$res = upload($_FILES);
將同一文件的屬性集中到同一數(shù)組格式如:
[name] => 3.jpg
[type] => image/jpeg
[tmp_name] => C:\phpEnv\temp\php\phpE22F.tmp
[error] => 0
[size] => 1924501
upload方法:
function upload(): array
{
$i = 0;
foreach ($_FILES as $k => $file) {
foreach ($file['name'] as $k => $v) {
$files[$i]['name'] = $file['name'][$k];
$files[$i]['type'] = $file['type'][$k];
$files[$i]['tmp_name'] = $file['tmp_name'][$k];
$files[$i]['error'] = $file['error'][$k];
$files[$i]['size'] = $file['size'][$k];
$i++;
}
}
return $files;
}
調(diào)取uploadFile方法上傳文本:
uploadFile($res), true));
uploadFile方法:
function uploadFile(array $files, $uploadPath='uploads/storage'):array{
if(!file_exists($uploadPath)){
mkdir($uploadPath,0777,true);
}
foreach($files as $file){
if($file['error']==0){ if(strstr($file['type'],'/',true)!=='image'){
$tips = $file['name'].'文件類型錯(cuò)誤';
continue;
}else{
$targetName = $uploadPath.'/'.date('YmdHis').md5($file['name'].time()).strstr($file['name'],'.');
if(!move_uploaded_file($file['tmp_name'],$targetName)){
$tips = $file['name'].'文件移動(dòng)失敗';
continue;
}else{
$img[]=$targetName;
}
}
}
}
if(!empty($tips)){
$res['error'] = $tips;
}
$res['fileRealPath']=$img;
return $res;
}
文件上傳挺常用的,這兩天比較忙補(bǔ)聽的錄播,跟著敲一遍基本理解了。
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號