首页 > 语言 > PHP > 正文

PHP获取当前文件的父目录方法汇总

2024-05-04 23:48:37
字体:
来源:转载
供稿:网友

方法一:先获得当前文件所在文件夹的长度,然后用substr来截取掉该长度:

 

复制代码 代码如下:
 $dirName = str_replace("//", "/", dirname(__FILE__));
 $dirNameLength = strlen($dirName);
 $currentDirNameLength = $dirNameLength - strrpos($dirName,"/"); //获得当前文件所在文件夹的长度!
 $parentDirName = substr($dirName,0,-$currentDirNameLength); //第3个参数如果为负数,那么表示从后面截取掉【该参数的绝对值】个字符。

 

方法二:将当前文件所在文件夹当作一个文件(文件夹其实是特殊的文件,一切皆为文件!!),直接用dirname嵌套一次dirname即可:

 $parentDirName = dirname(dirname(__FILE__));

从上可以看出:对事物的深刻认识,能大幅度提高代码质量!

附上:PHP获取路径或目录实现

PHP获取目录和的方法通过魔术变量;通过超级全局变量;通过相关函数等等:

<?php/** * PHP获取路径或目录实现 */ //魔术变量,获取当前文件的绝对路径echo "__FILE__: ========> ".__FILE__; echo '<br/>'; //魔术变量,获取当前脚本的目录echo "__DIR__: ========> ".__DIR__;echo '<br/>'; //dirname返回路径的目录部分,dirname(__FILE__)相当于__DIR__echo "dirname(__FILE__): ========> ".dirname(__FILE__);echo '<br/>'; //$_SERVER['PHP_SELF']和$_SERVER['SCRIPT_NAME']的结果一般相同,他们都是获取当前脚本的文件名//只有当php以cgi方式运行时有区别,但是现在几乎找不到以cgi方式运行php了echo '$_SERVER["PHP_SELF"]: ========> '.$_SERVER['PHP_SELF'];echo '<br/>'; echo '$_SERVER["SCRIPT_NAME"]: ========> '.$_SERVER['SCRIPT_NAME'];echo '<br/>'; //当前执行脚本的绝对路径。记住,在CLI方式运行php是获取不到的echo '$_SERVER["SCRIPT_FILENAME"]: ========> '.$_SERVER['SCRIPT_FILENAME'];echo '<br/>'; //当前运行脚本所在的文档根目录。在服务器配置文件中定义。echo '$_SERVER["DOCUMENT_ROOT"]: ========> '.$_SERVER['DOCUMENT_ROOT'];echo '<br>'; //getcwd()返回当前工作目录echo "getcwd(): ========> ".getcwd();echo '<br>';
 


注:相关教程知识阅读请移步到PHP教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选