UploadFile 對(duì)象
基于 PSR-7
規(guī)范封裝的 UploadFile
。
注意,當(dāng)上傳大于 2M
的文件時(shí)請(qǐng)調(diào)整配置文件 MAIN_SERVER.SETTING.package_max_length
參數(shù),詳細(xì)請(qǐng)看 配置文件。
在控制器內(nèi)獲取上傳的文件:
<?php
namespace App\HttpController;
use EasySwoole\Http\AbstractInterface\Controller;
class Index extends Controller
{
function index()
{
$request = $this->request();
// 獲取一個(gè)上傳文件,客戶(hù)端上傳的文件字段名為 'file'
// 返回的是一個(gè) \EasySwoole\Http\Message\UploadFile 的對(duì)象
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file = $request->getUploadedFile('file');
// 獲取所有上傳的文件
// 返回的是一個(gè)包含多個(gè) \EasySwoole\Http\Message\UploadFile 對(duì)象的對(duì)象數(shù)組
$files = $request->getUploadedFiles();
}
}
獲取臨時(shí)文件名
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getTempName();
獲取 Stream
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getStream();
移動(dòng)到指定位置
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->moveTo('/xxx/xxx/xxx.png'); // 失敗這里會(huì)拋出異常 \EasySwoole\Http\Exception\FileException
獲取文件大小
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getSize();
獲取錯(cuò)誤碼
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getError();
獲取客戶(hù)端文件名
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getClientFilename();
獲取文件類(lèi)型
/** @var \EasySwoole\Http\Message\UploadFile $file */
$file->getClientMediaType();