PHP 的 __FILE__ 常量
作者:bea
今天碰到了PHP的常量__FILE__的问题了。 在网上查了一下。总结了以下规律。 dirname(__FILE___)函数返回的是脚本所在在的路径。 比如文件b.php包含如下内容: <?php $basedir=dirname(__FILE__); ?> 如果b.php被其他目录里的a.php文件require或者include去引用的话。 变量$basedir的内容还是b.php所在的那个文件夹的路径。 而不是变成a.php文件所在的目录。 dirname(
今天碰到了PHP的常量__FILE__的问题了。
在网上查了一下。总结了以下规律。
dirname(__FILE___) 函数返回的是脚本所在在的路径。
比如文件 b.php 包含如下内容:
<?php
$basedir = dirname(__FILE__);
?>
如果b.php被其他目录里的a.php文件require 或者 include 去引用的话。
变量$basedir 的内容还是b.php所在的那个文件夹的路径。
而不是变成a.php文件所在的目录。
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');
有用 | 无用
在网上查了一下。总结了以下规律。
dirname(__FILE___) 函数返回的是脚本所在在的路径。
比如文件 b.php 包含如下内容:
<?php
$basedir = dirname(__FILE__);
?>
如果b.php被其他目录里的a.php文件require 或者 include 去引用的话。
变量$basedir 的内容还是b.php所在的那个文件夹的路径。
而不是变成a.php文件所在的目录。
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');
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- 一个数据采集类
- phpmyadmin中配置文件现在需要绝密的短语密码的解决方法
- 增加反向链接的101个方法 站长推荐
- Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
- 解决控件遮挡问题:关于有窗口元素和无窗口元素
- 获得Google PR值的PHP代码
- 一键删除顽固的空文件夹 软件下载
- php中通过smtp发邮件的类,测试通过
- php5.2.0内存管理改进
- php中截取字符串支持utf-8
- php中的登陆login
- php中的时间显示
- 解决phpmyadmin中文乱码问题。。。
- php批量删除数据
- mysql 的 like 问题,超强毕杀记!!!
- 一个更简单的无限级分类菜单代码
- 解决中英文字符串长度问题函数
- 在数据量大(超过10万)的情况下
- php防注