Автопогрузка PHP с несколькими сторонними библиотекамиPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Автопогрузка PHP с несколькими сторонними библиотеками

Сообщение Anonymous »

Я пишу плагин, в котором используются несколько сторонних библиотек (один из давно заброшенного репо, который я изменяю). Библиотека A Использует библиотека B, а мой код использует оба.

Код: Выделить всё

namespace LibraryA\Folder1;

use LibraryA\Folder1\Class1;
use LibraryA\Folder2\Class2;
use LibraryB\Class3;
...

public function __construct($val)
{
$obj = new LibraryB\Class3($val);
...
}
Теперь я хочу автоматически загружать вещи и сохранить эти библиотеки автономными в собственном каталоге моего плагина, чтобы не загрязнять внешнюю среду и для простоты установки/обновления. Я добавил простого автозагрузки в свой проект в надежде, что он заберут эти библиотеки из моей папки плагинов (нет, я не использую композитор). < /P>

Код: Выделить всё

function my_autoloader($className) {
$file = '/path/to/plugin/'.str_replace('\\', DIRECTORY_SEPARATOR, $className) . '.php';

if (file_exists($file)) {
require_once $file;
}
}
spl_autoload_register('my_autoloader');

Проблема состоит в том, что сторонняя библиотека A Использование библиотеки b и $ classname передается полностью квалифицированным - и неверным - пространство имен Эффективно? Кажется, это ничего не сделало, хотя я все еще экспериментирую. В любом случае, даже если это работает, я не наслаждаюсь мыслью о прохождении каждого класса в библиотеке A и изменении всех ссылок на библиотеку B на использование \ префиксы, чтобы они возвращали к корнеу, в справочнику верхнего уровня.
Я нуждаюсь в использовании Spl_AutoloL_register () Time Times Spectore Soptor -Soptemer, так что нагрузка на Autholyly, So Atemorder, так что нагрузка на Autelyly, So Atemonder So Trableder So Sodlesder, так что нагрузка на Autelyly, так что нагрузка на Autholy, So Atemonder Soptore So So -Laterer, чтобы зарегистрировать. их по -другому, когда он встречается с различными операторами использования и новыми ? Если да, то как? Нужны ли мне отдельные автозагрузки? Один для каждой библиотеки? /> Большинство ответов, поэтому я обнаружил, что до сих пор говорится «Использовать композитор», и это не вариант в данный момент. Если это не достаточно ясно, я постараюсь найти способ улучшить его.

Подробнее здесь: https://stackoverflow.com/questions/797 ... -libraries
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»