PHP獲取當前目錄和相對目錄的方法
<?php //獲取當前文件所在目錄,如果 A.php include B.php 則無論寫在哪個文件里,都是表示 A.php 文件所在的目錄 echo realpath('.'),'<br>'; echo getcwd(),'<br>'; // 獲取當前文件的上級目錄,如果 A.php include B.php 則無論寫在哪個文件里,都是表示 A.php 文件所在目錄的上級目錄 echo realpath('..'),'<br>'; // 獲取網站根目錄,所有文件里面獲取的都是當前項目所在的目錄 echo $_SERVER['DOCUMENT_ROOT'],'<br>'; // 獲取目錄信息 $path_parts = pathinfo(__FILE__); echo 'dirname: ',$path_parts['dirname'],'<br>';//表示代碼所在文件的目錄,如果 A.php include B.php 并且此代碼段寫在 B.php ,那么獲取的是 B.php 文件所在的目錄 echo 'basename: ',$path_parts['basename'],'<br>';//同上,獲取的是代碼所在的文件的文件名稱,比如:inc.php echo $path_parts['extension'],'<br>';//同上,獲取的是代碼所在的文件的后綴名,比如:php echo dirname(__FILE__),'<br>';//效果同 $path_parts['dirname'] ?>
PHP獲取目錄下面所有文件和文件夾
<?php $dir = "D:/"; //要獲取的目錄 echo "********** 獲取目錄下所有文件和文件夾 ***********<hr/>"; //先判斷指定的路徑是不是一個文件夾 if (is_dir($dir)){ if ($dh = opendir($dir)){ while (($file = readdir($dh))!= false){ //文件名的全路徑 包含文件名 $filePath = $dir.$file; //獲取文件修改時間 $fmt = filemtime($filePath); echo "<span style='color:#666'>(".date("Y-m-d H:i:s",$fmt).")</span> ".$filePath."<br/>"; } closedir($dh); } } ?>
使用dirname(),basename()和pathinfo()函數,可以很容易地使用PHP獲取完整路徑的文件名(filename)和目錄名(directory name),其中pathinfo()還包含文件擴展名。
完整文件路徑的示例
這些示例中使用的完整文件路徑是:
$path = "/var/www/mywebsite/htdocs/images/myphoto.jpg";
使用dirname()獲取目錄名稱
PHP的dirname()函數只返回完整路徑的目錄部分。 這是通過簡單地根據目錄分隔符(/ 在基于文件系統的*nix上和 \ 在Windows上)排除完整路徑的最后一部分來完成的,并且不檢查它是否實際上是一個目錄。
echo dirname($path)
將返回
/var/www/mywebsite/htdocs/images
注意以下兩個:
echo dirname("/var/www/mywebsite/htdocs/images/");
echo dirname("/var/www/mywebsite/htdocs/images");
將返回
/var/www/mywebsite/htdocs
使用basename()獲取文件名
要獲取完整路徑的文件名部分,請使用basename()函數。 注意,它只是路徑的最后一部分被認為是文件名,并且沒有進行任何測試以查看它是否實際上是一個文件。
echo basename($path);
將返回
myphoto.jpg
而
echo basename("/var/www/mywebsite/htdocs/images");
將返回
images
使用pathinfo()獲取目錄名稱、文件名和擴展名
PHP的pathinfo()函數返回一個關聯數組,其中包含basename,dirname,extension和(來自PHP 5.2.0)沒有擴展名的文件名。
print_r(pathinfo($path));
將返回
Array ( [dirname] => /var/www/mywebsite/htdocs/images [basename] => myphoto.jpg [extension] => jpg [filename] => myphoto )
<?php
echo __FILE__ ; // 取得當前文件的絕對地址,結果:D:\www\test.php
echo dirname(__FILE__); // 取得當前文件所在的絕對目錄,結果:D:\www\
echo dirname(dirname(__FILE__)); //取得當前文件的上一層目錄名,結果:D:\
?>
上課了分享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
===========chdir() 函數===========
如對本文有疑問,請提交到交流論壇,廣大熱心網友會為你解答??! 點擊進入論壇