我知道move_uploaded_file()
设置了上传文件的名称并设置了目的地。我有这个:
$sourcePath = $_FILES['file']['tmp_name']; // Storing source path of the file in a variable
$targetPath = $_SERVER['DOCUMENT_ROOT'] . '/img/profiles/'.$_FILES['file']['name']; // Target path where file is to be stored
move_uploaded_file($sourcePath,$targetPath) ; // Moving Uploaded file`
我试过爆炸$_FILES['file']['tmp_name']
,但我无法将上传文件的名称更改为POST变量$newfile=$_POST["something"];
提前谢谢
答案 0 :(得分:2)
我正在使用
//文件名
$file_name = $_FILES["file"]["name"];
$file_name = preg_replace('/\\.[^.\\s]{3,4}$/', '', $file_name);
//获取扩展程序
$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
//更改名称
$imagename = $file_name . time() . "." . $ext;
答案 1 :(得分:1)
使用$ targetpath变量中的文件名设置整个上载路径。 在您的代码中
$sourcePath = $_FILES['file']['tmp_name'];
$newfile=$_POST["something"]; //any name sample.jpg
$targetPath = $_SERVER['DOCUMENT_ROOT'] . '/img/profiles/'.$newfile;
move_uploaded_file($sourcePath,$targetPath) ;
现在上传的文件名是sample.jpg 我认为这对你有帮助。