Изучение различных методов получения имени родительского каталога в PHP

В PHP существует несколько способов извлечь имя родительского каталога по заданному пути. В этой статье блога мы рассмотрим различные методы достижения этой задачи. Мы предоставим примеры кода и объясним каждый метод в разговорной форме, чтобы вам было легче его понять. Итак, приступим!

Метод 1: использование функции dirname()
Самый простой способ получить имя родительского каталога — использовать функцию dirname(). Он возвращает компонент каталога по заданному пути. Вот пример:

$path = '/path/to/parent/dir/file.txt';
$parentDir = dirname($path);
echo $parentDir; // Output: /path/to/parent/dir

Метод 2: разделение пути
Другой метод предполагает использование функции explode()для разделения пути на массив на основе разделителя каталогов. Затем мы можем извлечь имя родительского каталога из полученного массива. Вот пример:

$path = '/path/to/parent/dir/file.txt';
$directories = explode('/', $path);
$parentDir = $directories[count($directories) - 2];
echo $parentDir; // Output: parent

Метод 3: использование функции realpath()
Функция realpath()разрешает любые символические ссылки и возвращает канонизированное абсолютное имя пути. Объединив его с функцией dirname(), мы можем получить имя родительского каталога. Вот пример:

$path = '/path/to/parent/dir/file.txt';
$parentDir = basename(dirname(realpath($path)));
echo $parentDir; // Output: parent

Метод 4: регулярное выражение (регулярное выражение)
Используя регулярные выражения, мы можем извлечь имя родительского каталога, сопоставив последнее вхождение имени каталога в пути. Вот пример:

$path = '/path/to/parent/dir/file.txt';
preg_match('/\/([^\/]*)\/[^\/]*$/', $path, $matches);
$parentDir = $matches[1];
echo $parentDir; // Output: parent