PHP处理上传文件

HTML中使用type = 'file'类型的表单可以向服务器上传文件;

上传文件的表单必须在form中定义enctyp = 'multipart/form-data';

 

HTML代码如下:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>FileSubmit Document.</title>
  </head>
  <body>
    <form action="user.php" method="post" enctype="multipart/form-data" name="upvideo">
      上传文件:<input type="file" name="video" />
      <input type="submit" value="上传"/>
    </form>
    </form>
  </body>
</html>

 

PHP代码如下:

<?php

var_dump($_POST);
var_dump($_FILES);

if ($_FILES['video']['error'] > 0) {
  echo "Error:" .$_FILES['video']['error']. "</br>";
} else {
  print_r($_FILES['video']);

  if (is_uploaded_file($_FILES['video']['tmp_name'])) {
    $upfile = $_FILES['video'];
    // 获取数组里面的值
    $name = $upfile['name']; // 上传文件的文件名
    $type = $upfile['type']; // 上传文件的类型
    $size = $upfile['size']; // 上传文件的大小
    $tmp_name = $upfile['tmp_name']; //上传文件的临时存放路径
    // 移动上传的文件到指定目录
    move_uploaded_file($tmp_name, '/Library/WebServer/Documents/book/' . $name);
  }
}

注意:

使用print_r打印数据的时候发现第一个数组为空,这表明使用file类型表单提交数据时并不使用$_POST接受数据,而是使用全局变量$_FILES来接收;

· php默认上传文件的大小只有2MB;

 

例如要上传一个50MB的大文件,php.ini配置如下:

file_uploads = On

upload_tmp_dir = "/user/file"

upload_max_filesize = 50M

post_max_size = 100M

max_excution_time = 600

max_input_time = 600

转载于:https://www.cnblogs.com/phpcurd/p/8486694.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值