SplFileInfo::getRealPath

(PHP 5 >= 5.2.2, PHP 7, PHP 8)

SplFileInfo::getRealPath获取文件的绝对路径

描述

public SplFileInfo::getRealPath(): string|false

此方法扩展所有符号链接,解析相对引用并返回文件的真实路径。

参数

此函数没有参数。

返回值

返回文件的路径,如果文件不存在,则返回 false

示例

示例 #1 SplFileInfo::getRealPath() 示例

<?php
$info
= new SplFileInfo('/..//./../../'.__FILE__);
var_dump($info->getRealPath());

$info = new SplFileInfo('/tmp');
var_dump($info->getRealPath());

$info = new SplFileInfo('/I/Do/Not/Exist');
var_dump($info->getRealPath());

$info = new SplFileInfo('php://output');
var_dump($info->getRealPath());

$info = new SplFileInfo("");
var_dump($info->getRealPath());
?>

上面的示例将输出类似以下内容

string(28) "/private/tmp/phptempfile.php" 
string(12) "/private/tmp"
bool(false)
bool(false)
string(12) "/private/tmp"

参见

添加备注

用户贡献的备注 1 个备注

3
giel at berkers dot online
6 年前
请注意,由于 realpath 缓存,当文件被其他进程重命名或删除时,此方法将返回 false。

示例

<?php
$info
= new SplFileInfo('example.php');
$info->getRealPath(); // /path/to/example.php

rename('example.php', 'foobar.php');

$info->getRealPath(); // false
?>
To Top