Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Anwendungsfälle dirname(__FILE__).

Detaillierte Erläuterung der Anwendungsfälle dirname(__FILE__).

php中世界最好的语言
php中世界最好的语言Original
2018-05-17 14:14:121402Durchsuche

这次给大家带来dirname(FILE)使用案例详解,dirname(FILE)使用的注意事项有哪些,下面就是实战案例,一起来看一下。

FILE表示当前所在文件的绝对路径包括文件名,dirname(FILE)表示当前文件的绝对路径,basename(FILE)表示当前文件的文件名称,dirname(FILE)."/f/".basename(FILE)则表示当前文件所在目录下的f目录下的,文件名称为dirname(FILE)的文件,require表示包含该文件到这个文件。

下面是详解:

1)dirname(FILE_) 函数返回的是脚本所在在的路径。

比如文件 b.php 包含如下内容:

<?php
$basedir = dirname(FILE);
?>

如果b.php被其他目录里的a.php文件require 或者 include 去引用的话。
变量$basedir 的内容还是b.php所在的那个文件夹的路径。
而不是变成a.php文件所在的目录。

2)dirname(FILE) 一般会返回文件所的当前目录到系统根目录的一个目录结构

不会返回当前的文件名称。
dirname(FILE) 也可能返回一个 . (当前目录)
[原因是 b.php 文件在 http.conf 或者 PHP 配置开发环境的默认WEB目录下.
比如 WEB_ROOT 为: "C:/root/www/".]
b.php文件路径为: "C:/root/www/b.php".

3)使用方法提示,

如果重复一次可以把目录往上提升一个层次:

比如:

$d = dirname(dirname(FILE));

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

4)包含得到上一级目录的文件

include(dirname(FILE).''/../filename

php的dirname(FILE)和dirname(dirname(FILE))区别

dirname(dirname(FILE));
假设FILE为 /home/web/config/config.php
上面的方法输出为 /home/web

dirname(dirname(FILE));得到的是文件上一层目录名

dirname(FILE);得到的是文件所在层目录名

脚本之家小编注:其实就是用到了PHP的dirname() 函数与FILE

定义和用法
dirname() 函数返回路径中的目录部分。

语法

dirname(path)

参数 描述
path 必需。规定要检查的路径。

说明
path 参数是一个包含有指向一个文件的全路径的字符串。该函数返回去掉文件名后的目录名。

例子

<?php
echo dirname("c:/testweb/home.php");
echo dirname("/testweb/home.php");
?>

输出:

c:/testweb
/testweb

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

Laravel ORM对Model::find缓存方法详解

thinkPHP控制器变量在模板内显示步骤详解

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Anwendungsfälle dirname(__FILE__).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn