作者:手机用户2602915215 | 来源:互联网 | 2023-07-31 14:31
导读:本篇文章编程笔记来给大家介绍有关php绝对路径文件怎么写的相关内容,希望对大家有所帮助,一起来看看吧。
本文目录一览:
1、PHP获取文件绝对路径的代码(上一级目录)
2、php中输出文件的绝对路径
3、[php]相对路径和绝对路径 ../ ../../ ./ / 还有不写, 这几种都是哪些路径啊,有点晕
4、thinkphp怎么获取绝对路径
5、PHP程序里面怎么绝对路径调用其他文件夹下面文件?
6、PHP绝对路径的问题
PHP获取文件绝对路径的代码(上一级目录)
PHP获取文件绝对路径
代码如下:
?php
echo
__FILE__
;
//
取得当前文件的绝对地址,结果:D:\www\test.php
echo
dirname(__FILE__);
//
取得当前文件所在的绝对目录,结果:D:\www\
echo
dirname(dirname(__FILE__));
//取得当前文件的上一层目录名,结果:D:\
?
chdir()
函数
定义和用法
chdir()
函数把当前的目录改变为指定的目录。
若成功,则该函数返回
true,否则返回
false。
语法
chdir(directory)参数
描述
directory
必需。规定新的当前目录。
例子
代码如下:
?php
//获得当前目录
echo
getcwd();
echo
"br
/";
//改变为
images
目录
chdir("images");
echo
"br
/";
echo
getcwd();
?
输出:
C:\testweb\main
C:\testweb\main\images
php中输出文件的绝对路径
请先把文件保存了啊!move_uploaded_file()
$_FILES['file']['name']; 这个只是缓存而已,你要把缓存保存在你的站点目录才行。
这样才有所谓的绝对路径。。。
[php]相对路径和绝对路径 ../ ../../ ./ / 还有不写, 这几种都是哪些路径啊,有点晕
/var/---web_root/-------| -- images_dir/---|--i.jpg
| -- test_dir/ ----|--test.php
| --le.php
比如此时是这些相对路径在test.php里
../ 此文件当前位置的上一层目录,就是images_dir test_dir le.php这级目录
../../ 上一层目录的上一层,就是web_root这级目录
,/则是当前目录,就是test.php这级
/则表示根目录,用来写绝对路径的
不写就是和./一样,表示当前目录
thinkphp怎么获取绝对路径
html的/,标示是网站的根目录,php的那个/,表示系统的根目录。
php一般这么搞。dirname(__FILE__);用这个获取当前文件所在的目录,然后根据这个目录,向前或者向后定位。
比如在你编辑的这个文件下面有个a.php,
你可以这么写。require_once(dirname(__FILE__).'/a.php');
要是比如,你现在编辑的文件是ctrl目录下,但是你想包含的文件在和ctrl同级别的一个目录server下,就这么写require_once(dirname(__FILE__).'/../a.php');
PHP程序里面怎么绝对路径调用其他文件夹下面文件?
绝对路径:dirname(__FILE__)./../js/test1.js
或者相对路径:../js/test1.js
PHP绝对路径的问题
给你看篇文章,希望对你有帮助:
引言:
关于PERL与PHP中的包含路径一直是一个比较难解的问题,主要是与操作系统和WEB服务器有关,不可能非常智能化的解决这个路径问题。相对于PERL,PHP的路径好得多,解决起来也容易得多,因为PHP的相对路径在PHP程序中的任何场合都可以使用,而不象PERL在某些语句中必须用绝对路径而导致移植的极其复杂。
基于此,在PHP中,我设计了一个绝对稳妥的解决方案,如下所述。
原则:
使用相对路径,但在相对路径中用绝对路径(有点绕,待会儿详解),一是可以保证可移植性,二是可以方便地修改,三是公式化且结构清晰明了,易于扩展。
步骤详解:
1、先确定好一个程序的根目录,注意是文件系统下的,不是WEB服务器下的虚拟目录,不过一般情况下该目录下的子目录的相对路径与URL下该目录的虚拟子目录是相同的。
2、在定义好的程序根目录下的每个子目录下(其实不一定是每个,根据需要)建立一个settings.php,里面定义一个变量或是常数(常数比较好,因为作用域比较大),如APPROOT,但这个APPROOT却不是绝对路径,而是该目录相对于你指定的程序根目录的相对路径。
3、在此目录下的所有程序入口文件(也即第一个包含其它文件的文件,或是允许直接在浏览器中浏览的文件)中第一句写上require_once('settings.php');,但要注意,所有被包含文件最好不要加此句——其实加上也可以,因为你可以在settings.php中写上 if(!defined(APPROOT)) define(APPROOT, '../..');这类的语句以防重定义。
4、如果你要包含其它文件,无论是直接还是间接地包含,都可以写成 include(APPROOT.$path);,这里$path为被包含文件相对于你所指定的程序根目录的绝对路径。
原理:
定下的程序根目录是相对路径,但具体的目录位置是相对于那个根目录的绝对路径,两者组合起来就是具体文件相对于程序根目录的相对路径了。例如目录c:\wwwroot\app为你指定的程序根目录,然后有这么两个文件c:\wwwroot\app\a\index.php和c:\wwwroot\app\b\inc.php。对子目录a来说,APPROOT是'..',而对程序根目录来说,inc.php的绝对路径是$path='/b/inc.php',两者组合为'../b/inc.php'。如果要在index.php中包含inc.php就要写成include('../b/inc.php');,而这个路径不就正好是刚才组合而成的APPROOT.$path吗?
结论:
经过以上处理,各个路径绝对整齐划一,唯一罗嗦一点的就是每个目录下要定义一下这个APPROOT,但每个目录下只需在本目录的settings.php中定义一次就足够了。如果你整个程序只有一个入口文件,如index.php,而其它文件全部都是直接或是间接地被包含进这个唯一的入口文件的话,就只需在index.php的所在目录下的settings.php中定义一次就OK了。如果有朋友做过Delphi的工程并对工程文件研究过的话,就会发现我刚才说的一个程序只有一个主入口文件的情况与Delphi的工程十分相似,因为Delphi除了一个主程序文件(dpr文件),其余的全部是单元文件或是资源文件,都不能独立执行。在PHP中,如果这种情况出现,只需定义一次APPROOT,并在主程序文件中第一句话写成require_once('settings.php');,而以后所有的包含全都可以用include(APPROOT.$path);,就保证不会有任何问题,除非你不会写这个“包含文件相对于程序根目录的绝对路径”$path。
这个方法我用了不止一次,收效很好。另外还可以参考JSP的WEB-INFO中路径的定义方式。
我这个是以不变应万变的公式化的方案,如果有朋友有更好的方案,欢迎提出讨论!如有不明白的也欢迎提出。
结语:以上就是编程笔记为大家整理的关于php绝对路径文件怎么写的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于php绝对路径文件怎么写的相关内容别忘了在本站进行查找喔。