gpt4 book ai didi

symfony - 如何在symfony2中获取文件大小?

转载 作者:行者123 更新时间:2023-12-04 18:05:09 25 4
gpt4 key购买 nike

我正在使用以下代码上传通过表单提交的文件。如何在上传之前获取文件大小?我希望最大文件大小为 20mb。

$file = $data->getFileName();
if ($file instanceof UploadedFile) {
$uploadManager = $this->get('probus_upload.upload_manager.user_files');
if ($newFileName = $uploadManager->move($file)) {
$data->setFileName(basename($newFileName));
}
}

最佳答案

Oldskool 是正确的。但是,如果您想在上传后检索确切的文件大小,您可以使用以下命令:

$fileSize = $file->getClientSize();

另一种解决方案是更改 php.ini 中上传文件的最大大小。以下将呼应当前文件大小限制。
echo $file->getMaxFilesize();

要获取表单错误,您应该验证表单并在验证失败时打印任何错误。
//include at the top of controller
use Symfony\Component\HttpFoundation\Response;

$form = $this->createForm(new FileType(), $file);

$form->handleRequest($request);

if ($form->isValid()) {
//store data
$data = "stored successfully";
$statusCode = 200;
} else {
//return errors if form is invalid
$data = $form->getErrors();
$statusCode = 500;
}

return new Response($data, $statusCode);

关于symfony - 如何在symfony2中获取文件大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30646858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com