Fungsi pengkapsulan tutorial muat naik fail pembangunan PHP

Pertama sekali, kita perlu meletakkan semua maklumat ralat fail pemprosesan dalam satu fail

Seterusnya kita akan menentukan fail fungsi, function.php

Kami akan menggunakan 3 fail di sini, file.html fungsi doaction.php.php

Kami tidak akan pergi ke butiran tentang halaman pertama Kodnya adalah seperti berikut:

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

Mari lihat doaction.php<🎜. >

tajuk ("Content-type: text/html; charset=utf-8");

$fileinfo = $_FILES['myfile'];
$allowEXT = array('jpg',' png','jpeg ','gif');//Format fail
$maxfile = 2097152; //2M //Berapa besar fail
$ext = pathinfo($fileinfo['name'], PATHINFO_EXTENSION);//Dapatkan jenis fail
$file = $fileinfo['error']; //Maklumat ralat penyimpanan

Kami belum selesai menulis fail ini lagi. kami akan memperkenalkan fail berkapsul ke dalam fail ini , dan kemudian memanggil fungsi

Mari lihat fail function.php Kodnya adalah seperti berikut:

<?php
    function files($file,$ext,$allowEXT,$maxfile,$size){
            //判断错误号
            if($file > 0){
                switch ($file){
                    case 1: $msg=  "上传文件超过了php 配置文件中 upload_max_filesize 的值";break;
                    case 2: $msg=  "上传文件超过max_file_size 大小";break;
                    case 3: $msg=  "文件部分被上传";break;
                    case 4: $msg=  "没有选择上传文件";break;
                    case 6: $msg=  "没有找到临时目录";break;
                    case 7: 
                    case 8: $msg=  "系统错误";break;
                }
                exit($msg);
            }
            //检测文件上传的类型
            if(!in_array($ext, $allowEXT)){
                exit('非法文件类型');
            }

            //检测上传文件的大小
            if($fileinfo['size']>$maxfile){
                exit('文件过大');
            }

            //检测是否是http post方式提交的
            if(!is_uploaded_file($fileinfo['$tmp_name'])){
                exit("文件不是以POST方式提交");
            }
            
    }
?>

Dengan kod di atas, kita ada. melengkapkan enkapsulasi. Fungsi mempunyai 4 parameter

Sebelum kita Bercakap tentang doction.php, anda perlu mengimport function.php, dan kemudian memanggil fungsi

Kod lengkap dokumentasi.php fail adalah seperti berikut:

<?php
    header("Content-type: text/html; charset=utf-8");
    require_once("function.php"); 
    $fileinfo = $_FILES['myfile'];
    $allowEXT = array('jpg','png','jpeg','gif');//文件格式
    $maxfile = 2097152; //2M   //文件多大
    $ext = pathinfo($fileinfo['name'],PATHINFO_EXTENSION);//获取文件类型
    $file = $fileinfo['error']; //存放错误信息
    $size = $fileinfo['size'];
    files($file,$ext,$allowEXT,$maxfile,$size);
?>


Meneruskan pembelajaran
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>文件上传</title> </head> <body> <form method="post" action="doaction1.php" enctype="multipart/form-data"> 上传文件:<input type="file" name="myfile"><br> <input type="submit" value="上传文件"> </form> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus