cari
Rumahphp教程php手册PHP实现文件上传功能

PHP实现文件上传功能

Jun 06, 2016 pm 08:12 PM
phpatasanmuat naikFungsicapaidokumen

PHP实现一个文件上传的功能还是比较容易的,这里简单记录一下自己使用方法。 这里是一次接收多个文件上传的脚本upload.php,如下: ?php// 实现多个文件上传并保存的后端?//设置编码为UTF-8,以避免中文乱码header('Content-Type:text/html;charset=utf-8');

PHP实现一个文件上传的功能还是比较容易的,这里简单记录一下自己使用方法。
这里是一次接收多个文件上传的脚本upload.php,如下:

<?php // 实现多个文件上传并保存的后端
?
//设置编码为UTF-8,以避免中文乱码
header('Content-Type:text/html;charset=utf-8');
?
//获取多个文件的信息,注意:这里的键名不包含[]
$fileArray = $_FILES['upload_file'];
?
$upload_dir = 'img/'; //保存上传文件的目录
?
foreach ( $fileArray['error'] as $key => $error ) {
if ( $error == UPLOAD_ERR_OK ) { //PHP常量UPLOAD_ERR_OK值为0,表示文件上传成功
$temp_name = $fileArray['tmp_name'][$key];
$file_name = $fileArray['name'][$key];
move_uploaded_file($temp_name, $upload_dir.$file_name);
echo '上传[文件'.$key.':'.$file_name.']成功!';
}else {
echo '上传[文件'.$key.':'.$file_name.']失败!';
}
}
?>


关于上传文件的大小限制,对于我目前的nginx + php-fpm,有nginx和php的两层限制。
nignx的限制,目前默认是1MB的请求body,可以在配置文件/etc/nginx/nginx.conf中来调整:

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
?
    client_max_body_size 10M;   #设置最大的body size
    ...
}

如果超过client_max_body_size的限制,nginx会返回413响应码表示“Request Entity Too Large ”。

PHP对post请求内容的大小限制:
在/etc/php.ini文件中,有如下内容:

?
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; http://www.php.net/manual/en/info.configuration.php#ini.max-input-time
max_input_time = 60
?
; Maximum size of POST data that PHP will accept.
; http://www.php.net/manual/en/ini.core.php#ini.post-max-size
post_max_size = 10M
?
; Whether to allow HTTP file uploads.
; http://www.php.net/manual/en/ini.core.php#ini.file-uploads
file_uploads = On
?
; Maximum allowed size for uploaded files.
; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
upload_max_filesize = 10M

参考资料:

http://www.365mini.com/page/php-upload-file.htm

http://www.php.net/manual/zh/features.file-upload.php

http://forum.nginx.org/read.php?2,139769,139769#msg-139769

Original article: PHP实现文件上传功能

©2014 笑遍世界. All Rights Reserved.

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa