zoukankan      html  css  js  c++  java
  • php的dirname(__FILE__)和dirname(dirname(__FILE__))使用总结【转】

    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_UTF8upload esta.php

    <?php
    $the_full_name=__FILE__;
    $the_dir=dirname(__FILE__);
    echo $the_full_name; //返回:F:Modoer_2.6_SC_UTF8upload	esta.php
    echo $the_dir; //返回:F:Modoer_2.6_SC_UTF8upload	est
    ?>
    

    **F:Modoer_2.6_SC_UTF8upload.php
    **

    <?php
    include "test/a.php";//返回:F:Modoer_2.6_SC_UTF8upload	esta.phpF:Modoer_2.6_SC_UTF8upload	est
    
    echo $the_full_name; //返回:F:Modoer_2.6_SC_UTF8upload	esta.php
    echo $the_dir; //返回:F:Modoer_2.6_SC_UTF8upload	est
    ?> 
    

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

    例如,当前文件是 F:Modoer_2.6_SC_UTF8upload esta.php,则
    _FILE_ 得到的就是完整路径 即 F:Modoer_2.6_SC_UTF8upload esta.php ,而
    dirname(_FILE_)得到路径部分 即 F:Modoer_2.6_SC_UTF8upload est

    dirname(dirname(_FILE_)),即:F:Modoer_2.6_SC_UTF8upload

    相关资源:https://www.cnblogs.com/shangxia/p/4650977.html#undefined

  • 相关阅读:
    ASP.NET的三层架构(DAL,BLL,UI)
    页面开发辅助类—HtmlHelper初步了解
    ASP MVC之参数传递
    ASP.NET MVC学习之母版页和自定义控件的使用
    ASP.Net MVC开发基础学习笔记(2):HtmlHelper与扩展方法
    UITableView动态改变Cell高度
    UITableView动态改变Cell高度
    nodejs豆瓣爬虫
    nodejs豆瓣爬虫
    苹果系统OSX中Automator批量重命名
  • 原文地址:https://www.cnblogs.com/KillBugMe/p/12397043.html
Copyright © 2011-2022 走看看