Home  >  Article  >  Backend Development  >  How to use the move_uploaded_file function in php

How to use the move_uploaded_file function in php

不言
不言Original
2018-12-26 10:55:205355browse

The files we usually upload are saved in temporary folders, such as /tmp, but the contents of the temporary folder will be deleted after a period of time. Therefore, in order to use the uploaded files in the future, the contents need to be saved in a location that is unlikely to be In the special directory that is arbitrarily deleted, you need to use the move_uploaded_file function. The move_uploaded_file function can be used to change the storage location of the file requested by the client to upload.

How to use the move_uploaded_file function in php

Let’s take a look at how to write the move_uploaded_file function

First we must specify the path before moving as the first parameter.

Basically specify $_FILES['item name']['tmp_name'].

$ _FILES ['item name'] represents the information of the file, '[tmp_name'] is the path of the file saved in the temporary folder.

The second parameter specifies the target path.

Because you must specify the full path including the file name, be careful not to copy the existing file name.

As for the value of the associative array, it serves as a temporary value for the example, and it actually changes depending on the environment.

Array(
    [name] => test.csv
    [type] => text/plain
    [tmp_name] => /tmp/php5dkdaFd
    [error] => 0
    [size] => 123
)

Let’s actually write it

The following code assumes that the csv file is uploaded using the project name upload_csv.

Also, the save target is "/var/www/files/" and the file name is a random string based on the current date and time.

// 保存文件
$storeDir = '/var/www/files/';

// 在上传文件的时候,因为要指定基本的post,所以要检查是否指定了其他的值
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    exit('请指定POST方法');
}

//如果上传成功的话,[“error”]将保存0(= UPLOADIER ERR)
if ($_FILES['upload_csv']['error'] !== UPLOAD_ERR_OK) {
    exit('上传失败');
}

// 上传到[ ' type ' ]文件的Min类型
// 因此,检查上传的文件是否是CSV文件
if ($_FILES['upload_csv']['type'] !== 'text/csv') {
    exit('请上传CSV文件');
}

// 以现在的时间为基础,生成唯一的值并作为文件名
$filename = uniqid().'csv';
// 将文件从临时文件夹移动到指定目录
move_uploaded_file($_FILES['upload_csv']['tmp_name'], $storeDir.$filename);

This article ends here. For more exciting content, you can pay attention to the relevant tutorial columns of the php Chinese website! ! !

The above is the detailed content of How to use the move_uploaded_file function in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn