Intereting Posts
создать таблицу в pdf с данными об обертке, используя fpdf в php PHP DateTime :: createFromFormat AM PM Issue Для этого адаптера требуется расширение PDO, но расширение не загружено Предотвращение дублирования в базе данных swiftmailer Swift_TransportException получает непроверенный блок try-catch как получить последний символ строки в PHP? инициировать обновление SOLR после обновления MySQL подтверждение сообщения перед отправкой в ​​php Как сделать ссылку, отправленную почтой и сделанную случайными токенами, доступ к их собственным данным на странице PHP Codeigniter AND OR AND Изменение переменной сеанса PHP между страницами Вызов функции из строки в C # Doctrine не создает внешние ограничения внешних ключей в MySQL mod_fcgid время ожидания чтения из канала, конец вывода сценария перед заголовками, несколько версий PHP Symfony 2 / Doctrine 2: два объекта для одной таблицы, используйте один в пользу другого

Загрузка классов с именами с автозагрузчиком Symfony 1.4?

Как зарегистрировать пространства имен (с PHP 5.3) в Symfony 1.4 для функции класса автозагрузчика (например, Symfony 2.0 )?

Related of "Загрузка классов с именами с автозагрузчиком Symfony 1.4?"

Вы можете использовать Autoloader из Symfony2 в платформе Symfony 1.4.

1. Скопируйте загрузчики классов Symfony2 в каталог поставщика вашего проекта Sandbox Project Symfony 1.4:

SF_ROOT_DIR / Библиотека / продавец / Symfony2 / SRC / Symfony / Компонент / ClassLoader / UniversalClassLoader.php

SF_ROOT_DIR / Библиотека / продавец / Symfony2 / SRC / Symfony / Компонент / ClassLoader / ApcUniversalClassLoader.php

2. Измените файл SF_ROOT_DIR / config / ProjectConfiguration.class.php следующим образом:

require_once dirname(__FILE__) . '/../lib/vendor/symfony/lib/autoload/sfCoreAutoload.class.php'; require_once dirname(__FILE__) . '/../lib/autoload/sfClassLoader.class.php'; sfCoreAutoload::register(); class ProjectConfiguration extends sfProjectConfiguration { public function setup() { $this->namespacesClassLoader(); $this->enablePlugins('sfDoctrinePlugin'); } public function namespacesClassLoader() { if (extension_loaded('apc')) { $loader = new ApcUniversalClassLoader('S2A'); } else { $loader = new UniversalClassLoader(); } $loader->registerNamespaces(array( 'Pohon' => __DIR__ . '/../lib/vendor/Pohon/src')); $loader->register(); } } 

3. Зарегистрируйте требуемые пространства имен:
например. Я хочу загрузить класс:

Pohon \ Tools \ Строка \ Utils \ Slugify.

Имя файла должно быть:

SF_ROOT_DIR / Библиотека / продавец / Pohon / SRC / Pohon / Инструменты / String / Utils / Slugify.php

и зарегистрированное пространство имен следующим образом:

Pohon => SF_ROOT_DIR / lib / vendor / Pohon / src

Вы можете использовать Composer, и это очень просто. Просто установите его на свой компьютер (вы, вероятно, уже с 2015 года) и запустите в своей папке проекта:

 composer init 

Затем вы можете установить все нужные вам композиции с помощью композитора и включить именно эту строку в свой ProjectConfiguration.class.php :

 require_once __DIR__.'/../vendor/autoload.php'; 

Обратите внимание, что пути могут отличаться, если вы изменили структуру каталогов по умолчанию Symfony1.4.

Symfony использует spl_autoload_register() для регистрации своего автозагрузчика ( sfAutoload ).

Вы можете зарегистрировать свой собственный обработчик в функции initialize() вашего Project / Application / Plugin. (в зависимости от того, что применяется).

Это, например, также то, что Swift_Mailer плагин Swift_Mailer : при необходимости он регистрирует свой собственный автозагрузчик.