Для моего приложения я использую пространства имен PSR-0. Все работает красиво! Пока я не хотел использовать Twig в качестве парсера шаблонов, Twig использует псевдопространства PEAR. Как Twig_Loader_Filesystem. Проблема в том, что, когда я хочу использовать Twig внутри моего приложения с расширением имен, например: <?php namespace Tact\ViewManager; class ViewManager { public function init() { $loader = […]
У меня проблемы с правильной установкой проекта с помощью композитора. У меня есть собственный пользовательский пакет (библиотека), размещенный в не публичном git-репо (но централизованном), который извлекается композитором (фиктивный проект, содержащий композитор.json для тестирования моего пакета). Таким образом, структура выглядит так: /test/project/composer.json index.php Содержание композитора.json: { "name": "vendor/test", "description": "Test-description", "authors": [{ "name": "Benjamin Carl", "email": […]
Я хотел бы использовать стандартный способ PSR-0 для автозагрузки классов без необходимости добавления включений, например, как я могу заменить приведенный ниже код механизмом автозагрузки: namespace Example; use MyLib\Controller; include_once './library/MyLib/Controller/AbstractController.php'; class MyController extends Controller\AbstractController { […] Итак, в приведенном выше примере это показывает, что в каждом контроллере мне нужно включить абстрактный контроллер, который сумасшедший … […]
Symfony 2.0 Autoloader ожидает, что библиотеки, которые он может обрабатывать, следуют стандарту PSR0 или PEAR при загрузке файлов. Если у вас есть старая библиотека, которая не соответствует ни одному из этих двух стандартов (в моем случае файлы классов называются name.class.php), как бы вы обрабатывали автоматическую загрузку этих библиотек? В Symfony 2.1 это легко, так как […]
В настоящее время я пытаюсь использовать автозагрузку PSR-0 с Composer, но я получаю следующую ошибку: Fatal error: Class 'Twitter\Twitter' not found Моя структура каталогов выглядит так: – Project – src – Twitter Twitter.php – vendor – Test index.php Мой файл index.php выглядит так: <?php use Twitter; $twitter = new Twitter(); Мой файл Twitter.php выглядит так […]
У меня есть крошечное приложение, для которого мне нужен автозагрузчик. Я мог бы легко использовать загрузчик классов symfony2, но он кажется излишним. Есть ли стабильный чрезвычайно легкий psr-0 автозагрузчик там?
Я создал собственный пакет композиторов, но у меня возникли проблемы с настройкой правильных параметров автозагрузки. Все мои классы находятся в пространстве имен MyNamespace/Common . Так, например, для включения моего класса ArrayHelper я использую Mynamespace/Common/Helper/ArrayHelper . Это важная часть моего composer.json : "autoload": { "psr-0": { "MyNamespace\\": "" } } Я прочитал это: composer.json / autoload […]
Я понимаю, что вы можете использовать либо стандарт PSR для поиска файлов, либо сообщить композитору каталог для сканирования для классов. В документации рекомендуется использовать стандарт PSR-4 . Существует также возможность для композитора создать оптимизированный автозагрузчик, который в основном генерирует полную classmap . Итак, зачем вообще использовать PSR-4, если лучший способ загрузки – с помощью classmap? […]
Я недавно прочитал об пространствах имен и о том, как они полезны. Я создаю проект в Laravel и пытаюсь перейти от автозагрузки классов к пространству имен. Я не могу понять, какова фактическая разница между PSR-0 и PSR-4. Некоторые ресурсы, которые я прочитал, являются Битва автопогрузчиков Автозагрузка Laracasts PSR-4 PSR-0 PSR-4 Я понимаю: PSR-4 не преобразует […]