`

PHP中 __FILE__ 和 dirname(__FILE__) 使用

    博客分类:
  • PHP
阅读更多

  __FILE__    返回网站根目录

dirname(__FILE__) 就是取得当前文件所在的目录

echo dirname(__FILE__);---->>>D:\Program Files\Apache Software\Apache2.2\htdocs\php

如:

include,include_once,require,require_once,包含某个文件,最近在写PHP程序时,遇到了很多麻烦就在 此处,一般来说我喜欢写相对路径,但是同一个文件在不同位置引用时相对路径都不同。。这样的话一个功能调通了,另一个功能又出现问题了,后来花了好长时间 才解决这个问题:

    利用PHP中的一个常数__FILE__,和函数dirname();

    __file__

    这个内定常数是当前php程序的就是完整路径(路径+文件名)。

    即使这个文件被其他文件引用(include或require),__file__始终是它所在文件的完整路径,而不是引用它的那个文件完整路径。

    请看下面例子:
c:/appserv/www/test/1 /a.php

 


<?php
$
the_full_name=__FILE__;
$ the_dir=dirname(__FILE__);
echo $ the_full_name; //返回c:/appserv/www/test/1/a.php

echo $ the_dir;            //返回c:/appserv/www/test/1

?>

c:/appserv/www/test/b.php

 


<?php

include "test/a.php";
echo $ the_full_name; //返回c:/appserv/www/test/1/a.php
echo $ the_dir;            //返回c:/appserv/www/test/1

?>

简单地说:
      __FILE__     返回当前 路径+文件名
      dirname(__FILE__) 返回当前文件路径的 路径部分
      dirname(dirname(__FILE__));得到的是文件上一层目录名(不含最后一个“ /”号)

例如,当前文件是 c:/appserv/www/test/ test.php ,则
__FILE__ 得到的就是完整路径       即 c:/appserv/www/test/ test.php ,而
dirname(__FILE__)得到路径部分   即 c:/appserv/www/test      (后面没有“ /”号)

例如上面的c:/appserv/www/test/b.php就可以这样写:

 


<?php

include dirname(__FILE__)."/b.php";
echo $ the_full_name; //返回c:/appserv/www/test/1/a.php
echo $ the_dir;            //返回c:/appserv/www/test/1

?

 

 

原文地址是:http://blog.csdn.net/zyyr365/archive/2010/09/10/5875388.aspx

                  http://www.liangkun.net

   z

分享到:
评论

相关推荐

    PHP中__FILE__、dirname与basename用法实例分析

    在php中__FILE__当前运行文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名,这是一个魔法变量(预定义常量),我们可以通用dirname与basename来获取文件目录或文件名. 一、__FILE__与dirname(__FILE...

    php getcwd与dirname(__FILE__)区别详解

    例如,在 `/folder/random/foo.php` 文件中使用 `__FILE__` 会返回 `/folder/random/foo.php` 的完整路径。 `dirname(__FILE__)` 是将 `__FILE__` 常量传递给 `dirname()` 函数,`dirname()` 函数的作用是返回指定...

    PHP dirname(__FILE__)原理及用法解析

    dirname(dirname(_FILE_)); 假设__FILE__为 /home/web/...php中定义了一个很有用的常数,即:_file_ 这个内定常数是所在php程序文件的完整路径(路径+文件名)。 即使这个文件被其他文件引用(include或require),__fil

    php dirname(__FILE__) 获取当前文件的绝对路径

    __FILE__ :被称为PHP魔术常量 ,返回当前执行PHP脚本的完整路径和文件名,包含一个绝对路径 1)dirname(__FILE__) 函数返回的是脚本所在在的路径。 比如文件 b.php 包含如下内容: &lt;?php $basedir = dirname(__...

    dirname(__FILE__)的含义和应用说明

    require和include都是用于包含和运行指定文件的PHP语句,当需要包含当前脚本所在目录下的其他文件时,可以直接使用dirname(__FILE__)来指定路径。这样的代码更加通用,不依赖于特定的文件系统结构。 例如,假设有一...

    oi.zip_PHP FILE MANAGER_file manager php_oi

    标签"php_file_manager"和"file_manager__php oi"强化了这个项目的核心功能,即PHP驱动的文件管理。"oi"可能是一个特定的标识符或者项目的简称。 压缩包中的"oi.php"是这个文件管理器应用的主要源代码文件。在PHP中...

    PHP 中dirname(_file_)讲解

    - 考虑到性能因素,如果在一个频繁被调用的函数中使用`dirname(__FILE__)`,可能会稍微影响性能。在这种情况下,可以考虑将结果缓存起来,避免重复计算。 #### 结论 通过`dirname(__FILE__)`,我们可以轻松地获取...

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

    __FILE__表示当前所在文件的绝对路径包括文件名,dirname(__FILE__)表示当前文件的绝对路径,basename(__FILE__)表示当前文件的文件名称,dirname(__FILE__).”/f/”.basename(__FILE__)则表示当前文件所在目录下的f...

    php的简单分词类库.zip

    define('APP_ROOT', str_replace('\\', '/', dirname(__FILE__))); function get_tags_arr($title)  { require(APP_ROOT.'/pscws4.class.php');  $pscws = new PSCWS4(); $pscws-&gt;set_dict(APP_ROOT.'...

    PHP 的 __FILE__ 常量

    了解并正确使用`__FILE__`常量以及`dirname()`函数,可以帮助开发者更好地管理文件路径,特别是在大型项目中进行模块化代码组织时,确保文件的正确包含和引用。同时,熟悉这些基本的PHP常量和函数用法,对于编写健壮...

    PHP程序设计-3期(KC016) 2.9.4 dirname函数拓展知识.doc

    此外,通过结合`__FILE__`和`dirname()`以及`basename()`,我们可以构造出新的路径。例如,`dirname(__FILE__) . "/f/" . basename(__FILE__)`将返回当前文件所在目录下的`f`子目录中的文件,文件名与当前文件相同。...

    PHP程序设计-3期(KC016) 2.9.4 dirname函数常见问题.docx

    要避免这种情况,记得在多行逻辑中使用花括号。 **问题3:dirname()函数的参数应为绝对路径** `dirname()`函数期望接收一个绝对路径作为参数,而不是相对路径。如果传入的是相对路径,结果可能会出乎意料。确保在...

    PHP 获取文件路径(灵活应用__FILE__)

    通常在主文件(如入口文件index.php)中使用__FILE__,可以得到该文件的绝对路径。使用__FILE__ 的好处是它能够保证路径的绝对性和准确性,这对于项目的文件路径管理非常重要,尤其是在服务器上部署项目时。 另外,...

    PHP 得到根目录的 __FILE__ 常量

    在实际开发中,`__FILE__` 和 `dirname()` 函数的使用场景非常广泛。例如,在使用 `include` 或 `require` 语句时,需要指定文件的路径,而 `__FILE__` 和 `dirname()` 函数可以帮助开发者获取当前文件的路径,从而...

Global site tag (gtag.js) - Google Analytics