首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PEAR HTTP_Upload 套件快速上手:單檔與多檔上傳處理

     編輯:PHP 綜合知識

套件特色

  • 支援單次處理多檔上傳。
  • 內建檔案驗證、類型/大小限制。
  • 多語系錯誤訊息(可擴充中文)。
  • 採用 PEAR_Error 錯誤處理機制。

安裝

pear install HTTP_Upload

或從 官網 下載。

單檔上傳範例

<!-- index.htm -->
<form action="files.php" enctype="multipart/form-data">
File1: <input type="file" name="userfile"><br>
<input type="submit" name="submit" value="Upload!">
</form>

<!-- files.php -->
<?php
require 'HTTP/Upload.php';
$upload = new HTTP_Upload('en'); // 錯誤訊息語系
$file = $upload->getFiles('userfile'); // 取得檔案物件或錯誤

if (PEAR::isError($file)) {
    die($file->getMessage());
}

if ($file->isValid()) {
    $file_name = $file->moveTo('./uploads_dir/'); // 移動並取得新檔名
    if (PEAR::isError($file_name)) {
        die($file_name->getMessage());
    }
    echo "上傳成功,檔案儲存為: $file_name";
}
?>

多檔上傳範例

<form action="files.php" enctype="multipart/form-data">
Image1: <input type="file" name="userfile[]"><br>
Image2: <input type="file" name="userfile[]"><br>
Image3: <input type="file" name="userfile[]"><br>
<input type="submit" name="sub" value="Upload!">
</form>

<?php
$files = $upload->getFiles(); // 取得檔案物件陣列
foreach ($files as $file) {
    if ($file->isValid()) {
        $file_name = $file->moveTo('./uploads_dir/');
        if (!PEAR::isError($file_name)) {
            echo "檔案 $file_name 上傳成功<br>";
        }
    }
}
?>

常用方法

方法說明
isValid()檢查是否為合法上傳檔案
moveTo($dest)移動檔案至指定目錄,回傳新檔名
getProp('name')取得原始檔名
getProp('size')取得檔案大小
getProp('type')取得 MIME 類型
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved