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

认识PHP文件上传函数:基本用法及常用选项详解

发布时间:2023-07-04 21:57:57

PHP文件上传函数是一组用于在服务器上接收和处理上传文件的函数。其中最常用的函数是move_uploaded_file()$_FILES

move_uploaded_file()函数用于将上传的文件从临时位置移动到目标位置,并返回移动成功与否的布尔值。它的基本用法为:

bool move_uploaded_file ( string $filename , string $destination )

其中,$filename是上传文件的临时文件名(通常是$_FILES['file']['tmp_name']),$destination是目标位置的路径。

除了基本的用法外,move_uploaded_file()函数还支持一些常用的选项,包括:

1. 重命名文件:

   $new_filename = 'new_filename.jpg';
   move_uploaded_file($_FILES['file']['tmp_name'], $new_filename);
   

这样会将上传的文件重命名为new_filename.jpg,并将其移动到目标位置。

2. 目录不存在时创建目录:

   $destination = 'uploads/';
   if (!is_dir($destination)) {
       mkdir($destination, 0777, true);
   }
   move_uploaded_file($_FILES['file']['tmp_name'], $destination . $_FILES['file']['name']);
   

如果目标位置的目录不存在,则先创建目录,再将上传的文件移动到目标位置。

3. 检查文件类型和大小:

   $allowed_types = ['image/jpeg', 'image/png'];
   $max_size = 2 * 1024 * 1024; // 2MB
   
   if (in_array($_FILES['file']['type'], $allowed_types) && $_FILES['file']['size'] <= $max_size) {
       move_uploaded_file($_FILES['file']['tmp_name'], $destination . $_FILES['file']['name']);
   }
   

这样可以限制上传文件的类型和大小,在移动文件之前进行判断。

$_FILES是PHP全局变量,用于存储上传的文件信息。它是一个关联数组,包含了上传文件的名称、类型、临时文件路径、大小等信息。例如,要获取上传文件的名称,可以使用$_FILES['file']['name']

总结起来,PHP文件上传函数的基本用法是通过move_uploaded_file()函数将上传的文件从临时位置移动到目标位置。常用的选项包括重命名文件、创建目录、文件类型和大小的检查。$_FILES是用于存储上传文件信息的全局变量。掌握这些基本用法和常用选项,可以方便地实现文件上传功能。