php中移动\上传\文件的目标路径
我需要知道PHP的move_uploaded_file函数的目标路径使用什么。 (见附件) 现在,我有了工作正常的代码。我的域的根目录包含以下项目(以及其他项目):php中移动\上传\文件的目标路径,php,file-upload,Php,File Upload,我需要知道PHP的move_uploaded_file函数的目标路径使用什么。 (见附件) 现在,我有了工作正常的代码。我的域的根目录包含以下项目(以及其他项目): 上载PHP的本地文件名操作不知道mod_rewrite对URL做了什么,只处理实际的原始文件系统路径。你可以让mod_rewrite把你漂亮的简单的example.com/index.php变成一个丑陋的example.com/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/yz,ph
上载PHP的本地文件名操作不知道mod_rewrite对URL做了什么,只处理实际的原始文件系统路径。你可以让mod_rewrite把你漂亮的简单的
example.com/index.php
变成一个丑陋的example.com/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/yz
,php仍然在服务器上的同一物理目录下运行
如果PHP脚本位于
/home/sites/example.com/html/index.PHP
,并且您使用uploads/example.jpg
作为移动路径,那么PHP将尝试将该图像放入/home/sites/example.com/html/uploads/example.jpg
,无论请求的URL是什么。您应该使用document\u root获得如下绝对路径:
$target_path = $_SERVER['DOCUMENT_ROOT'] . "/uploads/" . basename($_FILES['uploadedFile']['name']);
或使用
我们可以使用dirname(\uuuu FILE\uuuuu)
而不是服务器根目录
在任何根文件(index.php)的下面一行声明
现在你可以在需要上传的任何文件中使用它
echo $uploads_base_url=$_SESSION["uploads_base_url"];
$file\u name=“eg db.sql”;
回声“
”;
echo$target\u file=\uuuuuu DIR\uuuuuu.'/'.$file\u name;
回声“
”;
echo$target\u location=\uuuuuuu DIR\uuuuuuu.“/targetfolder/”。pathinfo($target\u file,pathinfo\u BASENAME);
回声“
”;
如果(文件_存在($target_file)){
echo“
文件存在
”;
if(重命名($target\u file,$target\u location))
{
回显“
完成”;
}否则{
回声“
无”;
}
}
或者您可以使用PHP常量,\uuuuuu DIR\uuuuuuuu
作为$\u服务器['DOCUMENT\u ROOT']
的替代方案……这个答案缺少教育性解释。
$target_path = "../uploads/" . basename($fileUpload['name']);
$_SESSION["uploads_base_url"]=dirname(__FILE__);
echo $uploads_base_url=$_SESSION["uploads_base_url"];
$file_name ="eg-db.sql";
echo "<br>";
echo $target_file = __DIR__.'/'.$file_name;
echo "<br>";
echo $target_location = __DIR__."/targetfolder/". pathinfo($target_file, PATHINFO_BASENAME);
echo "<br>";
if (file_exists($target_file)){
echo "<br> file exist <br>";
if (rename($target_file,$target_location))
{
echo "<br>done";
}else{
echo "<br>nothing";
}
}