Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP实现获取当前文件的父目录方法总结

PHP实现获取当前文件的父目录方法总结

墨辰丷
墨辰丷asal
2018-06-01 16:50:532070semak imbas

本文给大家汇总介绍了使用PHP获取当前文件所在目录的父目录的路径的2种方法,并附上php获取路径和目录的相关函数,有需要的小伙伴可以参考下

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

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php mysql操作mysql_connect连接数据库

PHP实现简单冒泡排序的方法

PHP实现表单提交时去除斜杠的方法


Atas ialah kandungan terperinci PHP实现获取当前文件的父目录方法总结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn