我想在上传的图片上更改名称[重复]

问题描述 投票:0回答:2

这个问题在这里已有答案:

我想更改上传图片的名称。这是我的PHP代码。我正在做一个简单的电子商务网站。如果有人可以帮助我如何添加代码来更改图像名称并将其保存在我的数据库中。谢谢!

 /*
 * Upload files.
 */
if (!empty($_FILES)) {
    if (isset($_FILES['file']['error'])) {
        foreach ($_FILES['file']['error'] as $uploadedFileKey => $uploadedFileError) {
            if ($uploadedFileError === UPLOAD_ERR_NO_FILE) {
                $errors[] = 'You did not provide any files.';
            } elseif ($uploadedFileError === UPLOAD_ERR_OK) {
                $uploadedFileName = basename($_FILES['file']['name'][$uploadedFileKey]);

                if ($_FILES['file']['size'][$uploadedFileKey] <= UPLOAD_MAX_FILE_SIZE) {
                    $uploadedFileType = $_FILES['file']['type'][$uploadedFileKey];
                    $uploadedFileTempName = $_FILES['file']['tmp_name'][$uploadedFileKey];

                    $uploadedFilePath = rtrim(UPLOAD_DIR, '/') . '/' . $uploadedFileName;

                    if (in_array($uploadedFileType, $allowedMimeTypes)) {
                        if (!move_uploaded_file($uploadedFileTempName, $uploadedFilePath)) {
                            $errors[] = 'The file "' . $uploadedFileName . '" could not be uploaded.';
                        } else {
                            $filenamesToSave[] = $uploadedFilePath;
                        }
                    } else {
                        $errors[] = 'The extension of the file "' . $uploadedFileName . '" is not valid. Allowed extensions: JPG, JPEG, PNG, or GIF.';
                    }
                } else {
                    $errors[] = 'The size of the file "' . $uploadedFileName . '" must be of max. ' . (UPLOAD_MAX_FILE_SIZE / 10240) . ' KB';
                }
            }
        }
    }
}
php image gallery
2个回答
0
投票

您可以像这样使用rename()函数:

rename($uploadedFilePath, '/path/to/new/file.txt')

0
投票

只需更改$ uploadedFileName var并将其设置为您想要的名称值,因为您可以看到here move_uploaded_file函数的第二个参数是目标,您需要输入新名称。

请检查this以获取有关文件名的一些安全指导。

© www.soinside.com 2019 - 2024. All rights reserved.