【发布时间】:2016-01-17 12:39:32
【问题描述】:
我收到了这个错误,但我无法修复它。这里的所有解决方案都使用旧的 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() .'}}';
}
}
【问题讨论】: