不能的。
HTTP协议对所上传文件,在用户本地计算机中的路径不予上传,仅提供文件在本地计算机中的文件名。而PHP预定义变量$_FILES,是PHP解析文件上传的HTTP请求后自动创建的变量,所以无法获取到HTTP协议中不包含的信息。
如果要获取上传文件在服务器中的路径,可以使用以下代码获取:
$_FILES[field_name]["tmp_name"]
PHP 常量 dirname(__file__)
__FILE__ :被称为PHP魔术常量 ,返回当前执行PHP脚本的完整路径和文件名,包含一个绝对路径
1)dirname(__FILE__) 函数返回的是脚本所在在的路径。 更新网络
比如文件 b.php教程 包含如下内容:
$basedir = dirname(__FILE__);
echo $basedir
//将在页面打印出一个这个文件所在绝对路径!
?>
我做的测试得到结果: E:websiteothertestcms
这个相当于, asp教程中的server.mappth的用法
如果b.php被其他目录里的a.php文件require 或者 include 去引用的话。 变量$basedir 的内容还是b.php所在的那个文件夹的路径。 而不是变成a.php文件所在的目录。
2)dirname(__FILE__) 一般会返回文件所的当前目录到系统根目录的一个目录结构。
不会返回当前的文件名称。 dirname(__FILE__) 也可能返回一个 . (当前目录) [原因是 b.php 文件在 http.conf 或者 PHP 配置开发环境的默认WEB目录下
echo __FILE__ ; // 取得当前文件的绝对地址,结果:D:wwwtest.php
echo dirname(__FILE__); // 取得当前文件所在的绝对目录,结果:D:www
echo dirname(dirname(__FILE__)); //取得当前文件的上一层目录名,结果:D:
?>
===========PHP获取文件绝对路径=======
===========chdir() 函数===========
定义和用法
chdir() 函数把当前的目录改变为指定的目录。
若成功,则该函数返回 true,否则返回 false。
语法
chdir(directory)参数 描述
directory 必需。规定新的当前目录。
例子
//获得当前目录
echo getcwd();
echo "
";
//改变为 images 目录
chdir("images");
echo "
";
echo getcwd();
?> 输出:
C:testwebmain
C:testwebmainimages
===========chdir() 函数===========
chdir() 函数把当前的目录改变为指定的目录。
若成功,则该函数返回 true,否则返回 false。
语法
chdir(directory)参数 描述
directory 必需。规定新的当前目录。
例子
//获得当前目录
echo getcwd();
echo "
";
//改变为 images 目录
chdir("images");
echo "
";
echo getcwd();
?>
不可以
本地选中路径的路径要:直接用$_FILES这个是获取不到的;如果想要获取,通过js可以实现,js可以获取file控件的路径值,你可以设置个隐藏域,当你点击提交的时候,在客户端判断一下表单数据,用js获取file中的路径并赋给隐藏域中然后发送给脚本,获取隐藏域的值即可!
貌似获取不到,上传时是二进制上传,传到零时文件夹里。不会包括源上传文件路径。