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