Файловая система
PHP Manual

pathinfo

(PHP 4 >= 4.0.3, PHP 5)

pathinfoВозвращает информацию о пути к файлу

Описание

mixed pathinfo ( string $path [, int $options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME ] )

pathinfo() возвращает информацию о path в виде ассоциативного массива или строки в зависимости от options.

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

path

Анализируемый путь.

options

Если указан, то задает для возврата отдельный элемент: один из следующих PATHINFO_DIRNAME, PATHINFO_BASENAME, PATHINFO_EXTENSION и PATHINFO_FILENAME.

Если options не указан, то возвращаются все доступные элементы.

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

Если параметр options не передан, то возвращаемый ассоциативный массив (array) будет содержать следующие элементы: dirname, basename, extension (если есть) и filename.

Замечание:

Если path не содержит расширения, то не будет возвращен элемент extension (см. ниже второй пример).

Если указан параметр options, будет возвращена строка (string), содержащая указанный элемент.

Список изменений

Версия Описание
5.2.0 Добавлена константа PATHINFO_FILENAME.

Примеры

Пример #1 Пример использования функции pathinfo()

<?php
$path_parts 
pathinfo('/www/htdocs/inc/lib.inc.php');

echo 
$path_parts['dirname'], "\n";
echo 
$path_parts['basename'], "\n";
echo 
$path_parts['extension'], "\n";
echo 
$path_parts['filename'], "\n"// начиная с PHP 5.2.0
?>

Результат выполнения данного примера:

/www/htdocs/inc
lib.inc.php
php
lib.inc

Пример #2 Пример с pathinfo(), показывающий разницу между null и отсутствием расширения.

<?php
$path_parts 
pathinfo('/path/emptyextension.');
var_dump($path_parts['extension']);

$path_parts pathinfo('/path/noextension');
var_dump($path_parts['extension']);
?>

Результатом выполнения данного примера будет что-то подобное:

string(0) ""
Notice:  Undefined index: extension in test.php on line 6

Notice: Undefined index: extension in test.php on line 6
NULL

Примечания

Замечание:

Подробнее о получении информации о текущем пути, обратитесь к секции " Предопределенные зарезервированные переменные".

Замечание:

pathinfo() учитывает настройки локали, поэтому для корректной обработки пути с многобайтными символами должна быть установлена соответствующая локаль с помощью функции setlocale().

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


Файловая система
PHP Manual