Книга: Справочник по PHP

Функции для работы с именами файлов

Функции для работы с именами файлов

basename

Выделяет имя файла из пути.

Синтаксис:

string basename(string $path)

Выделяет основное имя из пути $path

Примеры:

echo basename("/home/somebody/somefile.txt"); // выводит "somefile.txt"
echo basename("/"); // ничего не выводит
echo basename("/."); // выводит "."
echo basename("/./"); // также выводит "."

Функция basename() не проверяет существование файла. Она просто берет часть строки после самого правого слеша и возвращает ее.

Эта функция правильно обрабатывает как прямые, так и обратные слеши под Windows.

dirname

Выделяет имя каталога.

Синтаксис:

string dirname(string $path)

Возвращает имя каталога, выделенное из пути $path. Функция довольно "разумна" и умеет выделять нетривиальные ситуации, которые описаны в примерах:

echo dirname("/home/file.txt"); // выводит "/home"
echo dirname("../file.txt"); // выводит ".."
echo dirname("/file.txt"); // выводит "/" под Unix,
// "" под Windows
echo dirname("/"); // то же самое
echo dirname("file.txt"); // выводит "."

Если функции dirname() передать просто имя файла, она вернет ".", что означает "текущий каталог".

tempnam

Генерирует уникальное имя файла в определенном каталоге.

Синтаксис:

string tempnam(string $dir, string $prefix)

Генерирует имя файла в каталоге $dir с префиксом $prefix в имени, причем так, чтобы созданный под этим именем в будущем файл был уникален. Для этого к строке $prefix присоединяется некое случайное число.

Например, вызов tempnam("/tmp","temp") может возвратить /tmp/temp3a6b243c.

Если такое имя нужно создать в текущем каталоге, передайте $dir="."

realpath

Преобразует относительный путь в абсолютный.

Синтаксис:

string realpath(string $path)

Преобразует относительный путь $path в абсолютный, т.е. начинающийся от корня.

Пример:

echo realpath("../t.php"); // например, /home/t.php
echo realpath("."); // выводит имя текущего каталога

Файл, который указан в параметре $path, должен существовать, иначе функция возвратит false.

Оглавление книги


Генерация: 3.712. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз