РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
647 of 1361 menu

Метод makePathRelative

Метод makePathRelative класса Filesystem принимает два параметра: endPath и startPath. Метод вычисляет путь к endPath относительно директории startPath и возвращает получившуюся относительную строку пути. Если относительный путь невозможно построить, метод выбрасывает исключение InvalidArgumentException.

Метод удобно применять для вывода коротких путей в логах, консольных командах и при формировании ссылок, когда нежелательно показывать полный абсолютный путь от корня файловой системы.

Синтаксис

<?php public function makePathRelative(string $endPath, string $startPath): string ?>

Пример

Давайте получим путь к файлу 'article' относительно директории 'user':

<?php namespace App\Controller; use Symfony\Component\Filesystem\Filesystem; class ArticleController { public function index(): void { $fs = new Filesystem(); $res = $fs->makePathRelative( '/var/www/user/article', '/var/www/user' ); echo $res; } } ?>

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

"article/"

Пример

Давайте получим путь к вложенному файлу 'abcde' относительно директории 'user':

<?php namespace App\Controller; use Symfony\Component\Filesystem\Filesystem; class ArticleController { public function index(): void { $fs = new Filesystem(); $res = $fs->makePathRelative( '/var/www/user/hello/abcde', '/var/www/user' ); echo $res; } } ?>

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

"hello/abcde"

Пример

Давайте получим путь к файлу, который лежит в родительской директории относительно 'user':

<?php namespace App\Controller; use Symfony\Component\Filesystem\Filesystem; class ArticleController { public function index(): void { $fs = new Filesystem(); $res = $fs->makePathRelative( '/var/www/article', '/var/www/user' ); echo $res; } } ?>

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

"../article"

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

  • класс Filesystem,
    который предоставляет методы для работы с файловой системой
  • метод isAbsolutePath,
    который проверяет, является ли путь абсолютным
  • метод exists,
    который проверяет существование файла или директории
  • метод readFile,
    который читает содержимое файла
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить