Rumah >pembangunan bahagian belakang >masalah PHP >PHP中如何进行文件上传?我们需要注意什么?

PHP中如何进行文件上传?我们需要注意什么?

慕斯
慕斯asal
2021-06-18 15:40:252695semak imbas

上篇文章给大家介绍了《如何用PHP编辑一盒简单的图形计算器?》,本文继续给大家介绍PHP中如何进行文件上传?我们需要注意什么?有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP中如何进行文件上传?我们需要注意什么?

文件上传。

文件上传后续问题。

实现上传功能代码的重复利用:封装文件上传函数心

功能:上传文件。

条件:条件判斯。

需要上传得的文件的信息:对应的5个元素的数组;

1、文件类型是否合适? 外部指定MIME类型。

2、文件存储到什么位置? 外部指定。

3、文件格式限制(文件后缀) ?外部限定。

4、文件大小限制?外部指定。

结果:实现文件上传。

1、成功:结果能够在以后看到:需要将文件的路径和文件名字返回(存储到数据库)。

2、失败:返回false,指定错误原因(引用参数)。

(1)封装出一个上传函数

首先我们新建一个文件,在里面我们实现文件上传(单文件)

  • @param1 array $file," 需要.上传的文件信息: - -维5元素数组(name\tmp_ name\error\size\type)

  • @param2 array $allow_ _type,允许. 上传的MIME类型

  • @param3 string $path,存储的路径

  • @param4 string &$error, 如果出现错误的原因

  • @param5 array $allow_ format = array(), 允许. 上传的文件格式

  • @param6 int $max_ size = 20000允许上传的最大值

然后继续写函数(function)代码如下:

<?php
function up1oad_single($a11ow_type, $path, &$error , $al1ow_format = array(),$max_size =
2000000){
?>

这样的话我们的函数基本上就定义好了,

(2)判断问件是否有效

代码如下:

function upload_ single($file,$a11ow_ .type, $path, &$error, $al1ow_ format = array(),$max_ _size =
2000000){
//判断文件是否有效
if(!is_ array($file)|| !isset($file[ &#39;error&#39;])){
1/文件无效
$error = &#39;不是- 一个有效的.上传文件! &#39;;
return false;

(3)判断文件存储路劲是否有效

if(!is_ _dir($path)){
//路径不存在
$error = &#39;文件存储路径不存在! &#39;;
return false;

(4)判断文件本身上传的过程是否有错误:error

switch($file[ &#39;error&#39;]){
case 1:
case 2:
$error = &#39;文件超出服务器允许大小! &#39;;
return false;
case 3:
$error = &#39;文件. 上传过程中出现问题,只上传一.部分! &#39;;
return false;
case 4:
$error = &#39;用户没有选中要上传的文件! &#39;;
return false;
case 6:
case 7 :
$error = &#39;文件保存失败! &#39;;
return false;

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci PHP中如何进行文件上传?我们需要注意什么?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Artikel berkaitan

Lihat lagi