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

Метод hardlink

Метод hardlink класса Filesystem создаёт жёсткую ссылку на существующий файл. Первым параметром передаётся исходный файл, на который создаётся ссылка. Вторым параметром передаётся путь, по которому будет создана жёсткая ссылка. Жёсткая ссылка - это дополнительное имя для того же самого файла на диске. Оба имени указывают на одни и те же данные, и изменение содержимого через одно имя отражается на другом. Если исходный файл не существует, метод выбросит исключение IOException.

Синтаксис

public function hardlink(string $originFile, string $targetFile): void

Пример

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

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Filesystem\Filesystem; class ArticleController extends AbstractController { public function index(): Response { $fs = new Filesystem(); $fs->dumpFile('/tmp/article', 'abcde'); $fs->hardlink('/tmp/article', '/tmp/article_link'); return new Response('done'); } } ?>

После выполнения кода файл '/tmp/article_link' будет указывать на те же данные, что и '/tmp/article'.

Пример

Давайте убедимся, что изменение содержимого через ссылку меняет исходный файл:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Filesystem\Filesystem; class ArticleController extends AbstractController { public function index(): Response { $fs = new Filesystem(); $fs->dumpFile('/tmp/article', 'abcde'); $fs->hardlink('/tmp/article', '/tmp/article_link'); $fs->dumpFile('/tmp/article_link', 'hello'); return new Response($fs->readFile('/tmp/article')); } } ?>

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

hello

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

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