在php文件中扩展

时间:2017-05-21 14:45:34

标签: php mysqli

我创建了一个可以将文件上传到我的数据库的页面,但是当文件名有(。)时,它没有正确保存。例如,我上传了一个名为imagefile.50.jpg的文件,它只保存为image20.50

<?php

function upload_image()
{
    if(isset($_FILES["user_image"]))
    {
        $extension = explode('.', $_FILES['user_image']['name']);
        $new_name = $extension[0] . '.' . $extension[1];
        $destination = './upload/' . $new_name;
        move_uploaded_file($_FILES['user_image']['tmp_name'], $destination);
        return $new_name;
    }
}

1 个答案:

答案 0 :(得分:2)

要获取文件的filenameextension,您可以使用pathinfo,即:

$file = "some_dir/somefile.test.php"; # $_FILES['user_image']['name']
$path_parts = pathinfo($file);
$fn = $path_parts['filename'];
$ext = $path_parts['extension'];
print $fn."\n";
print $ext;

输出:

somefile.test
php