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

Метод getClientOriginalName

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

Синтаксис

public function getClientOriginalName(): string

Пример

Давайте получим оригинальное имя загруженного файла в контроллере:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class UploadController extends AbstractController { #[Route('/upload', name: 'upload_file')] public function upload(Request $request): Response { $file = $request->files->get('document'); if ($file) { $name = $file->getClientOriginalName(); return new Response($name); } return new Response('no file'); } } ?>

Результат выполнения кода при загрузке файла с именем 'article.txt':

"article.txt"

Пример

Давайте сохраним файл на сервере, используя оригинальное имя для формирования нового имени:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class UploadController extends AbstractController { #[Route('/upload/save', name: 'upload_save')] public function save(Request $request): Response { $file = $request->files->get('document'); if ($file) { $originalName = $file->getClientOriginalName(); $safeName = 'user_' . time() . '_' . $originalName; $file->move( $this->getParameter('kernel.project_dir') . '/uploads', $safeName ); return new Response('saved as ' . $safeName); } return new Response('no file'); } } ?>

Результат выполнения кода при загрузке файла с именем 'abcde.pdf':

"saved as user_1712345678_abcde.pdf"

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

  • класс UploadedFile,
    который представляет загруженный файл
  • метод getClientOriginalExtension,
    который возвращает оригинальное расширение файла
  • метод getClientMimeType,
    который возвращает MIME-тип файла от клиента
  • метод move,
    который перемещает загруженный файл в нужную директорию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить