phpfile上传,php 上传

发布时间:2022-11-24

本文目录一览:

  1. php如何实现文件上传
  2. php上传文件到文件夹
  3. 如何修改PHP上传文件大小限制?
  4. php上传文件到服务器

php如何实现文件上传

所谓上传就是把文件从你电脑本地复制到你的项目指定文件夹下。 但这有个中间过程,就是复制到系统指定的临时文件夹生成临时文件。 然后将临时文件复制到你指定的文件夹下。 剩下的就是各种验证了。 给你个图片上传方法

//上传一张图片
$pic = $_FILES['pic'];
function upload($pic){
    $tmp_name = $pic['tmp_name'];
    $name = $pic['name'];
    $type = $pic['type'];
    $size = $pic['size'];
    if(!is_uploaded_file($tmp_name)) exit('不是上传文件');
    //判断是否是图片
    $mine = array('image/png','image/jpg','image/gif','image/jpeg');
    if(!in_array($type,$mine)) exit('图片格式不正确');
    //判断是否有错误码
    $error = $pic['error'];
    switch ($error) {
        case 1:
            exit("超出上传文件的最大限制");
        case 2:
            exit("超出了指定的文件大小");
        case 3:
            exit("只有部分文件被上传");
        case 4:
            exit("文件没有被上传");
        case 6:
            exit("找不到临时文件夹");
        case 7:
            exit("文件写入失败");
    }
    echo "================<br/>";
    echo "上传文件名称是:".$name."<br/>";
    echo "上传文件类型是:".$type."<br/>";
    echo "上传文件大小是:".$size."<br/>";
    echo "上传后系统返回的值是:".$error."<br/>";
    echo "上传文件的临时存放路径是:".$tmp_name."<br/>";
    echo"开始移动临时文件".'<br>';
    $des_name = 'up/'.mt_rand().time().'.'.basename($type);
    $res = move_uploaded_file($tmp_name, $des_name);
    if($res){
        echo "================<br/>";
        echo "上传图片成功".'<br>';
    }
}

php上传文件到文件夹

//这是给文件重命名
$one = explode(".",$_FILES["file"]["name"]);
$file_name = $_FILES["file"]["name"] = time().".".$one[1];
//这是上传,用到move_uploaded_file,移动到:./assets/up/这个文件夹
move_uploaded_file($_FILES["file"]["tmp_name"], "./assets/up/" . $file_name);
//这是往数据库存放的 文件名称
$information_img = "./assets/up/" . $file_name;

如何修改PHP上传文件大小限制?

  1. 在php.ini中,做如下修改:
    file_uploads = on
    upload_tmp_dir = /home/upload
    upload_max_filesize = 4000M
    post_max_size = 4000M
    
    一般地,设置好上述四个参数后,上传8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:
    max_execution_time = 600
    max_input_time = 600
    memory_limit = 128M
    
  2. 在要确认上传的 里加入以下行:
  3. $_FILES["userfile"]["error"]返回值说明:
    • $_FILES['teacher_pic']['error'] = 1 文件大小超过了PHP.ini中的文件限制
    • $_FILES['teacher_pic']['error'] = 2 文件大小超过了浏览器限制
    • $_FILES['teacher_pic']['error'] = 3 文件部分被上传
    • $_FILES['teacher_pic']['error'] = 4 没有找到要上传的文件
    • $_FILES['teacher_pic']['error'] = 5 服务器临时文件夹丢失
    • $_FILES['teacher_pic']['error'] = 6 文件写入到临时文件夹出错
    • $_FILES['teacher_pic']['error'] = -1 末充许的类型
    • $_FILES['teacher_pic']['error'] = -2 文件过大,上传文件不能超过{$this-maxSize}个字节
    • $_FILES['teacher_pic']['error'] = -3 上传失败
    • $_FILES['teacher_pic']['error'] = -4 建立存放上传文件目录失败,请重新指定上传目录
    • $_FILES['teacher_pic']['error'] = -5 必须指定上传文件的路径

php上传文件到服务器

  1. 通过PHP,可以把文件上传到服务器。创建一个文件上传表单,下面这个供上传文件的 HTML 表单:
    <html>
    <body>
    <form action="upload_file.php" method="post" enctype="multipart/form-data">
        <label for="file">Filename:</label>
        <input type="file" name="file" id="file" />
        <br />
        <input type="submit" name="submit" value="Submit" />
    </form>
    </body>
    </html>
    
  2. 创建上传脚本,命名为"upload_file.php" 文件含有供上传文件的代码:
    <?php
    if ($_FILES["file"]["error"] > 0)
    {
        echo "Error: " . $_FILES["file"]["error"] . "<br />";
    }
    else
    {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Stored in: " . $_FILES["file"]["tmp_name"];
    }
    ?>
    

注:通过使用 PHP 的全局数组 $_FILES,就可以实现从客户计算机向远程服务器上传文件。