php 无法在laravel中上载大于2MB的文件

bkhjykvo  于 2022-12-10  发布在  PHP
关注(0)|答案(5)|浏览(159)

目前,我正在做一个CMS在laravel和我试图上传一个文件在laravel超过2MB,它显示该图像未能上传。
我的控制器代码。

$this->validate($request ,[
        'title' => 'required',
        'featured' => 'required|image',
        'content' => 'required',
        'category_id' => 'required',
        'tags' => 'required'
    ]);

    $featured = $request->featured;

    $featured_new_name = $featured->getClientOriginalName();

    $featured->move('uploads/posts', $featured_new_name);

    $post = Post::create([
        'title' => $request->title,
        'slug' => str_replace(' ', '-', $request->title),
        'featured' => 'uploads/posts/' . $featured_new_name,
        'content' => $request->content,
        'category_id' => $request->category_id,
        'user_id' => Auth::id()

    ]);   

     $post->tags()->attach($request->tags);

    Session::flash('success', 'Post Created Sucessfully.');

    return redirect()->route('posts');
qc6wkl3g

qc6wkl3g1#

例如,尝试增加php.ini中的以下值:

memory_limit = 32M
upload_max_filesize = 24M
post_max_size = 32M

或检查此link

aiqt4smr

aiqt4smr2#

echo phpinfo();

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Maximum allowed size for uploaded files
upload_max_filesize = 4M
ddarikpa

ddarikpa3#

在php.ini中增加内存限制是最好的主意。如果你只是想增加这个函数的内存限制,那么就在你的函数上使用这段代码。

ini_set('memory_limit', '4096M');
v8wbuo2f

v8wbuo2f4#

在我的例子中,我修改了CLI路径下的php.ini文件,以及apache2下的php.ini文件。
您可以找到与以下命令一起使用的php.ini文件:

# php --ini

Configuration File (php.ini) Path: /etc/php/8.0/cli
Loaded Configuration File:         /etc/php/8.0/cli/php.ini
fquxozlt

fquxozlt5#

您可以将上传的图像大小设置为“max = 10000”

$request->validate([
            'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:10000',
        ]);

相关问题