PHP is_uploaded_file()、move_uploaded_file() 函数

46 篇文章 0 订阅

PHP is_uploaded_file()、move_uploaded_file() 函数


is_uploaded_file() 函数判断指定的文件是否是通过 HTTP POST 上传的。

语法

is_uploaded_file(file)
参数描述
file必需。规定要检查的文件。

说明

如果 file 所给出的文件是通过 HTTP POST 上传的则返回 TRUE。
该函数可以用于确保恶意的用户无法欺骗脚本去访问本不能访问的文件,例如 /etc/passwd。这种检查显得格外重要,如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话。

注释:本函数的结果会被缓存。请使用 clearstatcache() 来清除缓存。

例子

<?php
    $file = "test.txt";
    if(is_uploaded_file($file)){
        echo ("$file is uploaded via HTTP POST");
    }else{
        echo ("$file is not uploaded via HTTP POST");
    }
?>

输出:

test.txt is not uploaded via HTTP POST

move_uploaded_file() 函数将上传的文件移动到新位置。若成功,则返回 true,否则返回 false。

语法

move_uploaded_file(file,newloc)
参数描述
file必需。规定要移动的文件。
newloc必需。规定文件的新位置。

说明

本函数检查并确保由 file 指定的文件是合法的上传文件(即通过 PHP 的 HTTP POST 上传机制所上传的)。如果文件合法,则将其移动为由 newloc 指定的文件。如果 file 不是合法的上传文件,不会出现任何操作,move_uploaded_file() 将返回 false。如果 file 是合法的上传文件,但出于某些原因无法移动,不会出现任何操作,move_uploaded_file() 将返回 false,此外还会发出一条警告。
这种检查显得格外重要,如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话。

注释:本函数仅用于通过 HTTP POST 上传的文件。
注意:如果目标文件已经存在,将会被覆盖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值