PHP 8.4.0 RC2 available for testing

SplFileInfo::getRealPath

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

SplFileInfo::getRealPathGets absolute path to file

Description

public SplFileInfo::getRealPath(): string|false

This method expands all symbolic links, resolves relative references and returns the real path to the file.

Parameters

This function has no parameters.

Return Values

Returns the path to the file, or false if the file does not exist.

Examples

Example #1 SplFileInfo::getRealPath() example

<?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());
?>

The above example will output something similar to:

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

See Also

add a note

User Contributed Notes 1 note

up
3
giel at berkers dot online
6 years ago
Note that due to realpath caching this method will return false when the file has been renamed or unlinked by other processes.

Example:

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

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

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