当前位置:首页 > PHP教程 > php应用 > 列表

php dirname(__FILE__)与__FILE__常量的应用

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-13 21:20:38 浏览: 评论:0 

在php中dirname()与__FILE__是我们的常量,本文章给大家详细介绍dirname()与__FILE__常量在使用过程中一些事项,大有兴趣的朋友可进入参考。

dirname() 函数:string dirname ( string $path )

给出一个包含有指向一个文件的全路径的字符串,本函数返回去掉文件名后的目录名,在 Windows 中,斜线(/)和反斜线()都可以用作目录分隔符,在其它环境下是斜线(/).

Example #1 dirname() 例子,代码如下:

  1. <?php 
  2. echo dirname("c:/testweb/home.php"); 
  3. echo dirname("/testweb/home.php"); 
  4. ?> 
  5. //输出: 
  6. c:/testweb 
  7. /testweb 

__FILE__

文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名

dirname(__file__)

__FILE__:被称为PHP魔术常量,返回当前执行PHP脚本的完整路径和文件名,包含一个绝对路径

1)dirname(__FILE__) 函数返回的是脚本所在在的路径,更新网络,比如文件 b.php 包含如下内容:

  1. <?php  
  2. $basedir = dirname(__FILE__);  
  3. echo $basedir 
  4. //将在页面打印出一个这个文件所在绝对路径! 
  5. ?> 

我做的测试得到结果:E:websiteothertestcms

dirname(__FILE__) 一般会返回文件所的当前目录到系统根目录的一个目录结构,不会返回当前的文件名称.

dirname(__FILE__) 也可能返回一个.(当前目录)

[原因是 b.php 文件在 http.conf 或者 PHP 配置开发环境的默认WEB目录下,比如 WEB_ROOT 为: "C:/root/www/".]

b.php文件路径为: "C:/root/www/b.php". 使用方法提示,如果重复一次可以把目录往上提升一个层次,比如:$d = dirname(dirname(__FILE__));

其实就是把一个目录给dirname()做参数了,因为dirname()返回最后的目录不带\\或者是/ ,所以重复使用的时候可以认为 dirname() 把最下层的目录当成文件名来处理了,照常返回当前目录的上级目录.这样重复就得到了它的上一级的目录. 包含得到上一级目录的文件include(dirname(__FILE__).'/../filename.php');

2,如何将PHP文件和html文件结合使用,代码如下:

  1. if($reguser != ""){  
  2. echo"Submit Photo  
  3. "; //开源代码phpfensi.com 
  4. echo"Log Out";  
  5. }else{  
  6. echo"Login";  
  7. }

Tags: dirname __FILE__常量应用

分享到: