我决定第一次练习Slim框架而我不使用MAMP或XAMPP,而是使用php -S。所以在这个过程中我试图找出如何创建数据库。
我决定使用SQLite通过命令行快速创建数据库。我相信我成功创建了表并插入了数据。
我尝试通过post.php文件访问它:
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
$app = new \Slim\App;
// Get All Posts
$app->get('/api/posts', function(Request $request, Response $response){
$sql = "SELECT * FROM posts";
try{
// Get Database Object
$db = new db();
// Connect
$db = $db->connect();
$stmt = $db->query($sql);
$posts = $stmt->fetchAll(PDO::FETCH_OBJ);
$db = null;
echo json_encode($posts);
} catch(PDOException $e ){
echo '{"error": {"text":'.$e->getMessage().'}}';
}
});
不幸的是,在浏览器中我收到此错误:
{"error": {"text":SQLSTATE[HY000] [2002] No such file or directory}}
我不确定问题是我是否需要创建用户并在SQLite中授予用户权限或我可能不知道的其他内容。我从未在Slim Framework中使用过SQLite。任何方向都将非常感激。