七零部落格
思则大道至简,疑则谜团重重!
思则大道至简,疑则谜团重重!
__FILE__:被称为PHP魔术常量,返回当前执行PHP脚本的完整路径和文件名,包含一个绝对路径.
1)dirname(__FILE__) 函数返回的是脚本所在在的路径,更新网络,比如文件 b.php 包含如下内容:
- <?php
- $basedir = dirname(__FILE__);
- echo $basedir
- //将在页面打印出一个这个文件所在绝对路径!
- ?>
我做的测试得到结果: E:websiteothertestcms,这个相当于,asp中的server.mappth的用法,如果b.php被其他目录里的a.php文件 require 或者 include 去引用的话,变量$basedir 的内容还是b.php所在的那个文件夹的路径,而不是变成a.php文件所在的目录.
2)dirname(__FILE__) 一般会返回文件所的当前目录到系统根目录的一个目录结构,不会返回当前的文件名称,dirname(__FILE__) 也可能返回一个 . (当前目录) [原因是 b.php 文件在 http.conf 或者 PHP 配置开发环境的默认WEB目录下.
几个 PHP 的“魔术常量”
名称 说明
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名,如果用在包含文件中,则返回包含文件名,自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径.
__FUNCTION__ 函数名称(PHP 4.3.0 新加),自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__CLASS__ 类的名称(PHP 4.3.0 新加),自 PHP 5 起本常量返回该类被定义时的名字(区分大小写),在 PHP 4 中该值总是小写字母的。
__METHOD__ 类的方法名(PHP 5.0.0 新加),返回该方法被定义时的名字(区分大小写)