我们平时上传的文件保存在临时文件夹中,例如/ tmp,但临时文件夹的内容在一段时间后会被删除,因此为了将来要使用上传文件,需要将内容保存在不太可能被任意删除的专用目录中,这时就需要使用move_uploaded_file函数,move_uploaded_file函数可用于更改客户端请求上传的文件的存储位置。

我们来看一下move_uploaded_file函数的写法
首先我们必须将移动前的路径指定为第一个参数。
基本上指定$ _FILES ['item name'] ['tmp_name']。
立即学习“PHP免费学习笔记(深入)”;
$ _FILES ['item name']表示该文件的信息,'[tmp_name']是保存在临时文件夹中的文件的路径。
第二个参数指定目标路径。
免费 盛世企业网站管理系统(SnSee)系统完全免费使用,无任何功能模块使用限制,在使用过程中如遇到相关问题可以去官方论坛参与讨论。开源 系统Web代码完全开源,在您使用过程中可以根据自已实际情况加以调整或修改,完全可以满足您的需求。强大且灵活 独创的多语言功能,可以直接在后台自由设定语言版本,其语言版本不限数量,可根据自已需要进行任意设置;系统各模块可在后台自由设置及开启;强大且适用的后台管理支
由于必须指定包括文件名的完整路径,因此请注意不要复制现有文件名。
至于关联数组的值,它作为示例的临时值,并且它实际上根据环境而改变。
Array(
[name] => test.csv
[type] => text/plain
[tmp_name] => /tmp/php5dkdaFd
[error] => 0
[size] => 123
)我们来实际写一下
下面的代码假定使用项目名称upload_csv上传csv文件。
此外,保存目标是“/ var / www / files /”,文件名是基于当前日期和时间的随机字符串。
// 保存文件
$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);本篇文章到这里就全部结束了,更多精彩内容大家可以关注php中文网的相关教程栏目!!!










