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


Posted in PHP onOctober 28, 2020

dirname(dirname(_FILE_));

假设__FILE__为 /home/web/config/config.php

上面的方法输出为 /home/web

dirname(dirname(\__FILE__));//得到的是文件上一层目录名
dirname(\__FILE__);//得到的是文件所在层目录名

发现网上找了很多文章都是错误的,特别验证后发出来:

dirname(_FILE_)

php中定义了一个很有用的常数,即:_file_

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

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

请看下面例子:

F:\Modoer_2.6_SC_UTF8\upload\test\a.php

<?php
$the_full_name=__FILE__;
$the_dir=dirname(__FILE__);
echo $the_full_name; //返回:F:\Modoer_2.6_SC_UTF8\upload\test\a.php
echo $the_dir; //返回:F:\Modoer_2.6_SC_UTF8\upload\test
?>

**F:\Modoer_2.6_SC_UTF8\upload\b.php
**

<?php
include "test/a.php";//返回:F:\Modoer_2.6_SC_UTF8\upload\test\a.phpF:\Modoer_2.6_SC_UTF8\upload\test

echo $the_full_name; //返回:F:\Modoer_2.6_SC_UTF8\upload\test\a.php
echo $the_dir; //返回:F:\Modoer_2.6_SC_UTF8\upload\test
?>

简单地说:

_FILE_ 返回其所在文件的路径+文件名

dirname(_FILE_) 返回_FILE__所在文件的路径部分

dirname(dirname(_FILE));得到的是__FILE__所在文件的上一层目录名(不含最后一个“\”号)

例如,当前文件是 F:\Modoer_2.6_SC_UTF8\upload\test\a.php,则

_FILE_ 得到的就是完整路径 即 F:\Modoer_2.6_SC_UTF8\upload\test\a.php ,而

dirname(_FILE_)得到路径部分 即 F:\Modoer_2.6_SC_UTF8\upload\test

dirname(dirname(_FILE_)),即:F:\Modoer_2.6_SC_UTF8\upload

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP运行时强制显示出错信息的代码
Apr 20 PHP
用php实现百度网盘图片直链的代码分享
Nov 01 PHP
PHP字符串的连接的简单实例
Dec 30 PHP
php实现Linux服务器木马排查及加固功能
Dec 29 PHP
PHP 实现判断用户是否手机访问
Jan 21 PHP
php文件下载处理方法分析
Apr 22 PHP
PHP模拟post提交数据方法汇总
Feb 16 PHP
thinkPHP框架中执行事务的方法示例
May 31 PHP
PHP addAttribute()函数讲解
Feb 03 PHP
PHP asXML()函数讲解
Feb 03 PHP
解决laravel id非自增 模型取回为0 的问题
Oct 11 PHP
laravel ORM关联关系中的 with和whereHas用法
Oct 16 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
Oct 28 #PHP
基于PHP实现邮箱验证激活过程详解
Oct 28 #PHP
THINKPHP5分页数据对象处理过程解析
Oct 28 #PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
Oct 27 #PHP
Laravel配合jwt使用的方法实例
Oct 25 #PHP
数据结构之利用PHP实现二分搜索树
Oct 25 #PHP
如何运行/调试你的PHP代码
Oct 23 #PHP
You might like
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
2013/07/03 PHP
使用PHP下载CSS文件中的图片的代码
2013/09/24 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
js function定义函数使用心得
2010/04/15 Javascript
详谈LABJS按需动态加载js文件
2015/05/07 Javascript
基于js对象,操作属性、方法详解
2016/08/11 Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
2017/03/03 Javascript
slideToggle+slideup实现手机端折叠菜单效果
2017/05/25 Javascript
vue-router重定向和路由别名的使用讲解
2019/01/19 Javascript
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
2019/08/04 Javascript
ckeditor一键排版功能实现方法分析
2020/02/06 Javascript
Javascript前端下载后台传来的文件流代码实例
2020/08/18 Javascript
[01:55]TI9显影之尘系列 - Evil Geniuses
2019/08/22 DOTA
Python爬虫模拟登录带验证码网站
2016/01/22 Python
django多个APP的urls设置方法(views重复问题解决)
2019/07/19 Python
python中时间转换datetime和pd.to_datetime详析
2019/08/11 Python
python for循环remove同一个list过程解析
2019/08/14 Python
Python如何调用JS文件中的函数
2019/08/16 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
阿迪达斯意大利在线商店:adidas意大利
2016/09/19 全球购物
美国女性运动零售品牌:Lady Foot Locker
2017/05/12 全球购物
印尼美容产品购物网站:PerfectBeauty.id
2017/12/01 全球购物
加拿大鞋网:Globo Shoes
2019/12/26 全球购物
通信工程专业女生个人求职信
2013/09/21 职场文书
党章学习思想汇报
2014/01/14 职场文书
公务员平时考核实施方案
2014/03/11 职场文书
人民教师求职自荐信
2014/03/12 职场文书
网站美工岗位职责
2014/04/02 职场文书
优秀本科毕业生自荐信
2014/07/04 职场文书
企业法人代表授权委托书
2014/10/02 职场文书
工作作风整顿个人剖析材料
2014/10/11 职场文书
2014年乡镇民政工作总结
2014/12/02 职场文书
民事二审代理词
2015/05/25 职场文书
跳高加油稿
2015/07/21 职场文书
Python 数据可视化之Bokeh详解
2021/11/02 Python