Как вы маршрутизируете ванильные php-скрипты в Symfony4? - PullRequest
0 голосов
/ 18 февраля 2019

Я нашел отличную библиотеку, которую хочу использовать (https://github.com/pqina/filepond-server-php), но это просто набор ванильных php-скриптов, некоторые классы, некоторые нет.

Они отлично работают, но я неНе знаю, как интегрировать его в мое приложение Symfony 4, так как автозагрузчик ожидает, что все будет в форме класса, с именем класса, совпадающим с именем файла. Также анализ всего этого и помещение его в классы контроллера заняло бы вечность.

Так что я просто вручную поместил это https://github.com/pqina/filepond-server-php в папку в моем проекте под названием «filepond», так что это буквально (я вынул ненужные файлы / папки):

enter image description here

Я не знаю, как маршрутизировать в папку за пределами / src (и, в частности, маршрутизировать ванильный скрипт не-класса контроллера, такой как index.php), чтобывыполнить этот код при его вызове. Возможно ли это вообще (направить и выполнить сценарии vanilla php в вашем проекте Symfony)?

1 Ответ

0 голосов
/ 18 февраля 2019

Чтобы получить доступ к файлу вне src, вы можете обновить конфигурацию автозагрузки composer.json.Если ваш класс находится внутри filepond/Helper, вы должны добавить это:

"autoload": {
    "psr-4": {
        "": ["src", "filepond/Helper"]
    }
}

В этом случае всякий раз, когда вы пытаетесь загрузить класс, автозагрузчик пытается найти его внутри src, а затем внутри "filepond / Helper".Но вы должны переименовать классы с помощью шаблона

CLASS_NAME.php

Пример:

Если у вас класс с именем Foo\Bar\Fizz\Buzz, файл должен быть в

  • src/Foo/Bar/Fizz/Buzz.php
  • filepond/Helper/Foo/Bar/Fizz/Buzz.php

В качестве альтернативы ... просто загрузите FilePond.class.php в свой фронт-контроллер.Там же, где загружено ваше приложение Symfony.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...