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

Метод symlink

Метод symlink класса Filesystem создаёт символическую ссылку (symlink) на указанный файл или директорию. Первым параметром передаётся исходный путь, на который создаётся ссылка, вторым - путь самой символической ссылки. Метод возвращает null и выбрасывает исключение, если ссылку создать не удалось.

Синтаксис

public function symlink(string $originDir, string $targetDir, bool $copyOnWindows = false): void

Пример

Давайте создадим символическую ссылку на файл:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentFilesystemFilesystem; class SymlinkController extends AbstractController { public function index(): Response { $fs = new Filesystem(); $fs->dumpFile('article.txt', 'hello'); $fs->symlink('article.txt', 'article-link.txt'); return new Response('link created'); } } ?>

После выполнения в корне проекта появится файл article-link.txt, который указывает на article.txt.

Пример

Давайте создадим символическую ссылку на директорию:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentFilesystemFilesystem; class SymlinkController extends AbstractController { public function index(): Response { $fs = new Filesystem(); $fs->mkdir('article'); $fs->symlink('article', 'article-link'); return new Response('dir link created'); } } ?>

После выполнения появится директория article-link, ссылающаяся на article.

Пример

Давайте проверим, что ссылка действительно создана:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentFilesystemFilesystem; class SymlinkController extends AbstractController { public function index(): Response { $fs = new Filesystem(); $fs->dumpFile('article.txt', 'hello'); $fs->symlink('article.txt', 'article-link.txt'); return new Response($fs->readlink('article-link.txt')); } } ?>

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

"article.txt"

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

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