php怎么實(shí)現(xiàn)多文件上傳

PHP
小億
85
2024-05-13 15:32:17

在PHP中,可以使用HTML的

標(biāo)簽結(jié)合PHP的$_FILES超全局?jǐn)?shù)組來(lái)實(shí)現(xiàn)多文件上傳。以下是一個(gè)簡(jiǎn)單的示例代碼:

<!DOCTYPE html>
<html>
<head>
    <title>多文件上傳</title>
</head>
<body>
    <form action="upload.php" method="post" enctype="multipart/form-data">
        <input type="file" name="files[]" multiple>
        <input type="submit" value="上傳文件">
    </form>
</body>
</html>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $uploadDir = 'uploads/';
    $fileNames = $_FILES['files']['name'];
    $fileTempNames = $_FILES['files']['tmp_name'];

    foreach($fileNames as $key => $fileName) {
        $fileTmpName = $fileTempNames[$key];
        $targetFilePath = $uploadDir . $fileName;

        if (move_uploaded_file($fileTmpName, $targetFilePath)) {
            echo "文件上傳成功: " . $fileName . "<br>";
        } else {
            echo "文件上傳失敗: " . $fileName . "<br>";
        }
    }
}
?>

在上面的示例中,用戶可以通過(guò)選擇多個(gè)文件來(lái)上傳文件。上傳的文件會(huì)先被保存在臨時(shí)目錄,然后使用move_uploaded_file()函數(shù)將文件移動(dòng)到指定的上傳目錄。在上傳過(guò)程中,可以根據(jù)需要對(duì)上傳的文件進(jìn)行驗(yàn)證、過(guò)濾等操作。

0