PHPKonf 2020 Online

SplFileInfo::getRealPath

(PHP 5 >= 5.2.2, PHP 7)

SplFileInfo::getRealPath Получает абсолютный путь к файлу

Описание

public SplFileInfo::getRealPath ( ) : string

Этот метод распаковывает все символические ссылки, разрешает относительные пути и возвращает абсолютный путь к файлу.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Возвращает путь к файлу или 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" 

Смотрите также

  • SplFileInfo::isLink() - Указывает, является ли файл ссылкой
  • realpath() - Возвращает канонизированный абсолютный путь к файлу

add a note add a note

User Contributed Notes 1 note

up
2
giel at berkers dot online
2 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