如何在php中更改上传的文件名? [重复]

问题描述 投票:-2回答:3

我想上传一个img文件并将其更改为另一个名称,但是我所做的我都无法执行代码->

<?php
if(isset($_FILES['image'])){
    $errors= array();
    $file_name = $_FILES['image']['name'];
    $file_size =$_FILES['image']['size'];
    $file_tmp =$_FILES['image']['tmp_name'];
    $file_type=$_FILES['image']['type'];
//    $file_ext=strtolower(end(explode('.',$_FILES['image']['name'])));
    $file_parts =explode('.',$_FILES['image']['name']);
    $file_ext=strtolower(end($file_parts));
    $extensions= array("jpeg","jpg","png");

    if(in_array($file_ext,$extensions)=== false){
        $errors[]="extension not allowed, please choose a JPEG or PNG file.";
    }

    if($file_size > 1000000000){
        $errors[]='File size must be excately 2 MB';
    }

    if(empty($errors)==true){
        move_uploaded_file($file_tmp,"uploads/".$file_name);
        echo "Success";
    }else{
        print_r($errors);
    }
}
?>
<html lang="en">
<body>

<form action="" method="POST" enctype="multipart/form-data">
    <input type="file" name="image">
    <input type="submit">
</form>

</body>
</html>

请问我该怎么办?(stackoverflow中的代码不起作用)

php file-upload file-rename
3个回答
-1
投票

-2
投票

-2
投票
$img_name = $_FILES['foto']['tmp_name']; $new_name = "new_pict_name.jpg"; $img_path = "/path_to_save_pict"; $conn_id = ftp_connect("your_ftp_host"); ftp_login($conn_id, "ftp_user_name", "ftp_password"); ftp_put($conn_id, $img_path.'/'.$new_name, $img_name, FTP_BINARY); ftp_close($conn_id);

您可以在ftp连接之前添加文件大小和文件类型验证。

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