Я получаю эту ошибку, и я не смог ее исправить. Все решения здесь используют старые версии Slim и в основном относятся к регистрации автозагрузчика, который обрабатывается в этом случае.
 Что именно вызывает эту ошибку?  В нем говорится, что это происходит в строке в функции addJob() с помощью этого кода $request = Slim::getInstance()->request();  т.е. отсутствует класс Slim. 
 require 'vendor/autoload.php'; $app = new \Slim\App; $app->post('/add_job', 'addJob'); $app->run(); function addJob() { $request = Slim::getInstance()->request(); // <------ ERROR $job = json_decode($request->getBody()); $sql = "INSERT INTO jobs (title, company, description, location) VALUES (:title, :company, :description, :location)"; try { $db = getConnection(); $stmt = $db->prepare($sql); $stmt->bindParam("title", $job->title); $stmt->bindParam("company", $job->company); $stmt->bindParam("description", $job->description); $stmt->bindParam("location", $job->location); $stmt->execute(); $job->id = $db->lastInsertId(); $db = null; echo json_encode($job); } catch(PDOException $e) { echo '{"error":{"text":'. $e->getMessage() .'}}'; } } 
Что именно вызывает эту ошибку?
вместо того, чтобы получать запрос от статически общего экземпляра, используйте тот, который передается как первый аргумент функции addJob
 function addJob(MessageInterface $request) { $job = json_decode($request->getBody());