Готовы ли вы работать без фреймворка?

«Готовы ли вы работать без фреймворка?» — вопрос из категории Софт-скиллы, который задают на 24% собеседований PHP Разработчик. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

Да, готов. Понимание нативного PHP — это основа. Я работал с легаси-проектами и создавал простые микросервисы и скрипты без тяжелых фреймворков.

Пример организации простого MVC-подхода на чистом PHP:

// index.php — фронт-контроллер
$request = $_SERVER['REQUEST_URI'];
$path = parse_url($request, PHP_URL_PATH);

$routes = [
    '/' => 'HomeController@index',
    '/contact' => 'ContactController@showForm',
];

if (array_key_exists($path, $routes)) {
    [$controllerName, $method] = explode('@', $routes[$path]);
    require_once __DIR__ . '/controllers/' . $controllerName . '.php';
    $controller = new $controllerName();
    $controller->$method();
} else {
    http_response_code(404);
    echo 'Page not found';
}

Я могу организовать автозагрузку через spl_autoload_register, работать с БД через PDO и шаблонизацию через буферизацию вывода. Это ценный навык для понимания того, как фреймворки работают под капотом, и для работы в ограниченных окружениях.