TG Telegram Group & Channel
Библиотека PHP программиста 👨🏼‍💻👩‍💻 | United States America (US)
Create: Update:

Сегодня я покажу вам, как быстро и удобно организовать автозагрузку классов в PHP без использования Composer.

Мы все любим Composer, но бывают ситуации, когда он просто неуместен — например, в небольшом проекте, скрипте или легаси-коде, где Composer не использовался изначально. В таких случаях можно сделать свою простую, но эффективную автозагрузку.

Вот базовый пример:


spl_autoload_register(function ($class) {
$baseDir = __DIR__ . '/src/';
$classPath = str_replace('\\', '/', $class) . '.php';
$file = $baseDir . $classPath;

if (file_exists($file)) {
require $file;
}
});


Что здесь происходит:
- spl_autoload_register регистрирует анонимную функцию, которая будет вызываться при попытке использовать неизвестный класс.
- Класс App\Services\MailService превратится в путь src/App/Services/MailService.php
- Если файл существует — он подключается.

Это суперудобный способ структурировать код и избавиться от бесконечных require.

Если хочется чуть больше гибкости — можно добавить поддержку нескольких базовых директорий, логирование ошибок или даже кэширование найденных путей.

Вопрос к вам:
А вы когда-нибудь писали свою автозагрузку? Или полностью доверяете Composer?

👉 @php_lib

Сегодня я покажу вам, как быстро и удобно организовать автозагрузку классов в PHP без использования Composer.

Мы все любим Composer, но бывают ситуации, когда он просто неуместен — например, в небольшом проекте, скрипте или легаси-коде, где Composer не использовался изначально. В таких случаях можно сделать свою простую, но эффективную автозагрузку.

Вот базовый пример:


spl_autoload_register(function ($class) {
$baseDir = __DIR__ . '/src/';
$classPath = str_replace('\\', '/', $class) . '.php';
$file = $baseDir . $classPath;

if (file_exists($file)) {
require $file;
}
});


Что здесь происходит:
- spl_autoload_register регистрирует анонимную функцию, которая будет вызываться при попытке использовать неизвестный класс.
- Класс App\Services\MailService превратится в путь src/App/Services/MailService.php
- Если файл существует — он подключается.

Это суперудобный способ структурировать код и избавиться от бесконечных require.

Если хочется чуть больше гибкости — можно добавить поддержку нескольких базовых директорий, логирование ошибок или даже кэширование найденных путей.

Вопрос к вам:
А вы когда-нибудь писали свою автозагрузку? Или полностью доверяете Composer?

👉 @php_lib


>>Click here to continue<<

Библиотека PHP программиста 👨🏼‍💻👩‍💻






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)