PHP realpath 文件系统函数

  • 定义和用法

    realpath - 返回规范化的绝对路径名
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    5.3.0 在之前的版本中,在 *BSD 系统上,如果仅仅是 path 不存在的话,realpath() 并不会像其它系统那样返回 FALSE。
    5.0.0 在此之前的版本中,如果 path 传入了空或者 NULL,将导致 realpath() 返回脚本当前的目录。
  • 语法

    realpath ( string $path  )   
    
    realpath() 扩展所有的符号连接并且处理输入的 path 中的 '/./', '/../' 以及多余的 '/' 并返回规范化后的绝对路径名。返回的路径中没有符号连接,'/./' 或 '/../' 成分。
  • 参数

    参数 必需的 描述
    path 要检查的路径。
    注意: 尽管必须提供路径,但该值可以为空或NULL。在这些情况下,该值将解释为当前目录。
  • 返回值

    成功时返回规范化的绝对路径名。 结果路径将没有符号链接,“ /./”或“ /../”组件。 realpath() 失败时返回FALSE,某些说文件不存在的话。
    注意: 正在运行的脚本必须对层次结构中的所有目录具有可执行权限,否则realpath()将返回FALSE。
    注意: 因为 PHP 的整数类型是有符号整型而且很多平台使用 32 位整型,对 2GB 以上的文件,一些文件系统函数可能返回无法预期的结果 。
  • 示例

    <?php
    chdir('/var/www/');
    echo realpath('./../../etc/passwd');
    
  • 相关函数

    basename() - 返回路径中的文件名部分
    dirname() - 返回路径中的目录部分
    pathinfo() - 返回文件路径的信息