欢迎访问宙启技术站
智能推送

PHP文件上传常用函数详解

发布时间:2023-06-10 15:30:21

PHP是一种常用的服务器端脚本语言,在网站后端开发中使用广泛。其中一个常见的功能是文件上传。文件上传是指将本地计算机上的文件上传到Web服务器。在PHP中,有许多函数可用于处理和管理文件上传。本文将详细介绍这些函数。

1. $_FILES

$_FILES是一个包含上传文件信息的关联数组。它由用户上传文件时创建,并在文件上传后立即填充。它包含了以下信息:

- name:上传文件的原始文件名。

- type:上传文件的MIME类型。

- tmp_name:上传文件的临时文件名和路径。

- error:上传文件时出现的错误代码。

- size:上传文件的大小(以字节为单位)。

2. move_uploaded_file()

move_uploaded_file()函数将上传文件从临时目录移动到指定的目录。它需要两个参数,分别是临时文件名和目标文件名(即上传后的文件名和路径)。下面是一个例子:

if(move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/'.$_FILES['file']['name'])){
    echo "文件上传成功。";
}else{
    echo "文件上传失败。";
}

3. is_uploaded_file()

is_uploaded_file()函数检查指定的文件是否是通过HTTP POST上传的。它需要一个参数,即文件名和路径。下面是一个例子:

if(is_uploaded_file($_FILES['file']['tmp_name'])){
    echo "该文件是上传的文件。";
}else{
    echo "该文件不是上传的文件。";
}

4. move_uploaded_file()

move_uploaded_file()函数将上传文件从临时目录移动到指定的目录。它需要两个参数,分别是临时文件名和目标文件名(即上传后的文件名和路径)。下面是一个例子:

if(move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/'.$_FILES['file']['name'])){
    echo "文件上传成功。";
}else{
    echo "文件上传失败。";
}

5. uploaded_file()

uploaded_file()函数检查指定的文件是否是通过HTTP POST上传的。它需要一个参数,即文件名和路径。下面是一个例子:

if(is_uploaded_file($_FILES['file']['tmp_name'])){
    echo "该文件是上传的文件。";
}else{
    echo "该文件不是上传的文件。";
}

6. filesize()

filesize()函数返回指定文件的大小(以字节为单位)。它需要一个参数,即文件名和路径。下面是一个例子:

$filesize = filesize('uploads/'.$_FILES['file']['name']);
echo "文件大小为:".$filesize."字节。";

7. pathinfo()

pathinfo()函数返回一个关联数组,其中包含有关指定文件路径的信息,例如文件名、扩展名和目录路径。它需要一个参数,即文件名和路径。下面是一个例子:

$pathinfo = pathinfo('uploads/'.$_FILES['file']['name']);
echo "文件名为:".$pathinfo['filename']."。";
echo "扩展名为:".$pathinfo['extension']."。";
echo "目录路径为:".$pathinfo['dirname']."。";

8. chmod()

chmod()函数更改指定文件的权限。它需要两个参数,分别是文件名和权限模式。下面是一个例子:

if(is_uploaded_file($_FILES['file']['tmp_name'])){
    if(move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/'.$_FILES['file']['name'])){
        chmod('uploads/'.$_FILES['file']['name'], 0666);
        echo "文件上传成功。";
    }else{
        echo "文件上传失败。";
    }
}else{
    echo "该文件不是上传的文件。";
}

9. unlink()

unlink()函数删除指定的文件。它需要一个参数,即文件名和路径。下面是一个例子:

unlink('uploads/'.$_FILES['file']['name']);
echo "文件已经被删除。";

总结

PHP文件上传涉及的函数很多,本文介绍了常用函数,包括$_FILES、move_uploaded_file()、is_uploaded_file()、filesize()、pathinfo()、chmod()、unlink(),希望本文可以对您有所帮助。