PHP从零单排(四)PHP中的文件上传处理 分类: PHP ...

    在WEB开发中,经常会遇到从客户端上传文件到服务器端的问题。通常,文件上传使用的是HTTP的POST方式,使用POST方式传递文件到服务器端。要完成文件上传处理,首先要定义HTML表单的enctype属性为"multipart/form-data",如以下代码所示。

<form enctype="multipart/form-data" action="somefile.php" method="POST">

    只有这样的表单,才能确保文件可以提交并上传。其中,somefile.php要替换为一个可以处理文件上传的真实PHP文件。

<html>
<head><title>3-6</title>
</head>
<body>
<form enctype="multipart/form-data" action="3-7.php" method="POST">
upload<input name="myfile" type="file" />
<input type="submit" value="Submit" />
</form>
</body>
</html>

    在PHP程序中,使用全局变量$_FILES处理文件上传。$_FILES是一个数组,包含了要上传的文件的信息。相关数组的内容:

$_FILES['myfile']['name']表示客户端文件的原始名称,即要上传的文件的文件名。其中myfile就是在上述代码中定义的input元素的name 属性的值:<input name="myfile" type="file" />

$_FILES['myfile']['type']表示上传文件的类型。

$_FILES['myfile']['size']表示已上传文件的大小,单位为字节。

$_FILES['myfile']['tmp_name']表示文件上传后,在服务器端存储的临时文件名。

$_FILES['myfile']["error"]表示和文件上传的相关错误信息。

    文件提交后,一般会被存储到服务器的默认临时目录中,可以通过修改php.ini中的upload_tmp_dir项,修改为其他路径。使用函数move_uploaded_file()将上传的文件移到指定的目录下。该函数的原型如下所示。第一个参数filename指合法的上传文件,第二个参数destination是移动后的目标文件。如果上传的文件不合法,或由于某种原因无法移动文件。该函数的原型如下所示。第一个参数filename指合法的上传文件,第二个参数destination是移动后得目标文件。如果上传文件不合法,或由于某种原因无法移动文件,该函数会返回FALSE。

move_uploaded_file(filename,destination)

<?php

 $upload_path=$_SERVER['DOCUMENT_ROOT']."/upload/";
 $dest_file=$upload_path.basename($_FILES['myfile']['name']);

 if(move_uploaded_file($_FILES['myfile']['tmp_name'],$dest_file))
 {
 	echo "文件已上传至服务器根目录的upload目录下";
 }
 else
 {
 	echo "文件上传时发生了一个错误".$_FILES['myfile']['error'];
 }
?>



版权声明:本文为博主原创文章,未经博主允许不得转载。

posted on 2014-04-21 11:13  景初 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/ifibercc/p/4677355.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值