您现在的位置: 365建站网 > 365文章 > PHP获取目录名和获取文件的方法

PHP获取目录名和获取文件的方法

文章来源:365jz.com     点击数:2009    更新时间:2021-06-24 16:06   参与评论

PHP获取当前目录和相对目录的方法

</>code

  1. <?php
  2. //获取当前文件所在目录,如果 A.php include B.php 则无论写在哪个文件里,都是表示 A.php 文件所在的目录
  3. echo realpath('.'),'<br>';
  4. echo getcwd(),'<br>';
  5. // 获取当前文件的上级目录,如果 A.php include B.php 则无论写在哪个文件里,都是表示 A.php 文件所在目录的上级目录
  6. echo realpath('..'),'<br>';
  7. // 获取网站根目录,所有文件里面获取的都是当前项目所在的目录
  8. echo $_SERVER['DOCUMENT_ROOT'],'<br>';
  9. // 获取目录信息
  10. $path_parts = pathinfo(__FILE__);
  11. echo 'dirname: ',$path_parts['dirname'],'<br>';//表示代码所在文件的目录,如果 A.php include B.php 并且此代码段写在 B.php ,那么获取的是 B.php 文件所在的目录
  12. echo 'basename: ',$path_parts['basename'],'<br>';//同上,获取的是代码所在的文件的文件名称,比如:inc.php
  13. echo $path_parts['extension'],'<br>';//同上,获取的是代码所在的文件的后缀名,比如:php
  14. echo dirname(__FILE__),'<br>';//效果同 $path_parts['dirname']
  15. ?>

PHP获取目录下面所有文件和文件夹

</>code

  1. <?php
  2.     $dir = "D:/";  //要获取的目录
  3.     echo "********** 获取目录下所有文件和文件夹 ***********<hr/>";
  4.     //先判断指定的路径是不是一个文件夹
  5.     if (is_dir($dir)){
  6.         if ($dh = opendir($dir)){
  7.             while (($file = readdir($dh))!= false){
  8.                 //文件名的全路径 包含文件名
  9.                 $filePath = $dir.$file;
  10.                 //获取文件修改时间
  11.                 $fmt = filemtime($filePath);
  12.                 echo "<span style='color:#666'>(".date("Y-m-d H:i:s",$fmt).")</span> ".$filePath."<br/>";
  13.             }
  14.             closedir($dh);
  15.         }
  16.     }
  17. ?>


使用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));

将返回

</>code

  1. Array
  2. (
  3.   [dirname] => /var/www/mywebsite/htdocs/images
  4.   [basename] => myphoto.jpg
  5.   [extension] => jpg
  6.   [filename] => myphoto
  7. )


<?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() 函数===========

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛

发表评论 (2009人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
昵称:
最新评论
------分隔线----------------------------

快速入口

· 365软件
· 杰创官网
· 建站工具
· 网站大全

其它栏目

· 建站教程
· 365学习

业务咨询

· 技术支持
· 服务时间:9:00-18:00
365建站网二维码

Powered by 365建站网 RSS地图 HTML地图

copyright © 2013-2024 版权所有 鄂ICP备17013400号