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 類型 |