用PHP实现一个简易版文件上传功能(超详细讲解)-php教程

资源魔 23 0
1. php简化版的图片上传(不各类验证)

<form action="" enctype="multipart/form-data" method="post" >
请抉择需求上传的文件:<input type="file" name="upfile" /><br>
<input type="submit" value="上传" />
</form>

起首咱们需求正在form表单中退出 enctype=”multipart/form-data”示意申明表单中会有图片发送, action=”” 示意以后页面提交,method=”post”传输形式为post

<?php
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];
$name=$upfile['name'];
$tmp_name=$upfile["tmp_name"];//上传文件的暂时寄存门路
move_uploaded_file($tmp_name,'up/'.$name);
echo "上传胜利";
}
else{
    echo "您尚未上传文件";
}
?>

要害词总结

is_uploaded_file 示意验证文件能否是经过 HTTP POST 上传的,前提成立才能够失常上传

$_FILES[‘upfile’][‘tmp_name’]) 示意猎取到以后传输图片的内陆地位

move_uploaded_file($tmp_name,’up/’.$name); ,该办法有两个参数,第一个为上传的文件的文件名,第二个为挪动文件到这个地位

2. 文件的写入与读取

起首引见写入:

     $myfile = fopen("co妹妹ent/" .time().'-'. rand(0, 1000) . ".co妹妹ent", "a") or die("Unable to open file!");
        $txt = time().'<br />';
        fwrite($myfile, $txt);
        fclose($myfile);

此中fopen函数的作用为写入数据,第一个参数为写入文件详细门路,第二个示意将读取到患上数据放入该文件中,此中文件名采纳工夫戳加之随机数形成,后缀名为co妹妹ent,a示意写入形式关上,将文件指针指向文件末尾。假如文件没有存正在则测验考试创立它,or die示意执行失败,就执行Unable to open file!(无奈关上文件)。

第二句示意数据,数据能够是post传输的,也能够是get,随便

第三句fwrite示意写入文件,第一个参数为写入文件的地位,第二个为要写入的数据

第四句示意封闭该文件,示意写入终了,本次执行终了

$list = glob("co妹妹ent/*.co妹妹ent");
rsort($list);
for ($i = 0; count($list) > $i; $i++) {
    $file_path = $list[$i];
    if (file_exists($file_path)) {
        $fp = fopen($file_path, "r");
        $str = fread($fp, filesize($file_path));//指定读取巨细,这里把整个文件内容读掏出来
        echo $str = str_replace("\r\n", "<br />", $str);
    }
}

正在引见读取:

要害语句为

第一句:起首应用(glob)先找到需求读取的文件,假如有不少合乎前提的文件,那末他们将会应用数组进行保留,读取的时分应用遍历数组就能够了

第二句: rsort为降序排序,次要是为了餍足特定前提下的排序,例如依照公布工夫

第三句:由于能够经过var_dump,print等晓得glob是以数组的方式保留门路的,以是咱们应用count算出总数,而后一条条遍历,即可以失去需求读取的文件门路

第四句:$file_path猎取文件门路

第五句:file_exists判别文件能否存正在

第六句:fopen读取该文件,而且以只读的形式关上

第七句:fread第一个参数示意读取的货色,第二个示意读取的文件的巨细,这里也就示意有几何读几何

第八句:str_replace交换函数,示意将$str中的一切的\r\n都交换成br(示意换行,换成网页中的换行)

以上就是用PHP完成一个繁难版文件上传性能(超具体解说)的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 PHP文件上传

抱歉,评论功能暂时关闭!