Я работаю с несколькими проектами, каждый из которых отделен от других на моем сервере.Так что моя проблема в том, что у меня есть проект Core, в котором есть все необходимые функции, а в проектах Laravel раздражает копирование / вставка данных каждый раз.Я думал создать пакет и установить его во всех моих проектах Laravel через composer, но меня беспокоит тот факт, что каждый раз, когда я хочу добавить функцию или выполнить незначительное исправление ошибки, мне придется делать обновление в каждом композерепроект (у меня более 20 на самом деле).
Я только что предложил несколько идей, дайте мне знать, что вы думаете об этом, и если вы будете использовать какую-то другую идею:
- Создать модель / класс, который включает мою основную библиотеку php core непосредственно с сервера (помните, что у меня все проекты на одном сервере).Мне просто нужно вызвать модель / класс, и он импортирует все функции.Мне просто нужно будет постоянно обновлять код основной библиотеки каждый раз, когда я выполняю незначительное исправление ошибки или любую новую реализацию.
- Создайте пакет, в котором будет находиться весь код, который мне может понадобиться во всех проектах (основная библиотека).Это было бы идеально, так как я хочу просто использовать команду установки composer, чтобы установить пакет в моем проекте.Меня не волнует это решение, потому что у меня более 20 различных проектов, и мне нужно будет делать более 20 обновлений композитора каждый раз, когда я выполняю незначительное исправление ошибки или новую реализацию.
- ПоследнееОдним из них является создание универсального компоновщика, в котором он содержит все необходимые мне пакеты (почти все проекты используют один и тот же composer.json) и создание символической ссылки между всеми проектами.Я установлю пакеты в одну папку и буду обновлять их каждый раз, когда выполняю какую-то новую задачу, а символическая ссылка будет обновлять папки в каждом проекте.
Что вы думаете об этих параметрах?Я думаю, что я пойду на третий, но хочу знать ваше мнение или если у вас есть та же проблема и работает с другими решениями.