尝试重命名上载文件时出现未知解析错误

时间:2016-09-18 17:22:48

标签: php

我可以让用户上传文件并将其保存在文件夹中但是当我尝试使用以下命令重命名时:

$date = date('d/m/o!G:i');
rename("/var/www/html/Images/CommonImages/{basename($_FILES['postfile']['name'])}","/var/www/html/Images/CommonImages/{$_SESSION['username']}/{$date}.{$imageFileType}");

它给了我这个Parse错误:

syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

可能它有点蠢......

1 个答案:

答案 0 :(得分:2)

不要尝试在字符串中执行函数...使用连接:

变化:

"/var/www/html/Images/CommonImages/{basename($_FILES['postfile']['name'])}"

要:

"/var/www/html/Images/CommonImages/" . basename($_FILES['postfile']['name'])

你应该习惯使用连接而不是将变量放在字符串中。尽管PHP允许变量在字符串中,但大多数其他语言却不允许。在我看来,代码更加清晰,因为你可以很容易地看到哪些部分是静态字符串,哪些部分是变量:

"/var/www/html/Images/CommonImages/" . $_SESSION['username'] . "/" . $date . "." . $imageFileType