php如何扩展与SQLite db连接的类
我想用php sqlite创建一个简单的web服务。我找到了一个很好的起点示例,但是我需要一个帮助来修改从mysql到sqlite的连接。我对php已经生疏了。 那么,如何更改下面发布的代码以反映sqlite db呢php如何扩展与SQLite db连接的类,php,sqlite,Php,Sqlite,我想用php sqlite创建一个简单的web服务。我找到了一个很好的起点示例,但是我需要一个帮助来修改从mysql到sqlite的连接。我对php已经生疏了。 那么,如何更改下面发布的代码以反映sqlite db呢 class API extends REST { public $data = ""; const DB_SERVER = "localhost"; const DB_USER = "Database_Username"; const DB_PASSWORD = "Database
class API extends REST
{
public $data = "";
const DB_SERVER = "localhost";
const DB_USER = "Database_Username";
const DB_PASSWORD = "Database_Password";
const DB = "Database_Name";
private $db = NULL;
public function __construct()
{
parent::__construct();// Init parent contructor
$this->dbConnect();// Initiate Database connection
}
//Database connection
private function dbConnect()
{
$this->db = mysql_connect(self::DB_SERVER,self::DB_USER,self::DB_PASSWORD);
if($this->db)
mysql_select_db(self::DB,$this->db);
}
在必要的情况下,这就是如何进行SQLite连接
<?php
require_once("Rest.inc.php");
class API extends REST {
//inizio scop
public $data = "";
public function __construct(){
parent::__construct(); // Init parent contructor
$this->dbConnect(); // Initiate Database connection
}
public function processApi(){
// echo "HELLO API";
$func = strtolower(trim(str_replace("/","",$_REQUEST['rquest'])));
if((int)method_exists($this,$func) > 0)
$this->$func();
else
$this->response('',404); // If the method not exist with in this class, response would be "Page not found".
}
private function dbConnect(){
// echo "HELLO BOY";
try {
$this->db = new PDO('sqlite:model.sqlite3');
$this->db->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
}
catch( PDOException $e ) {
echo $e->getMessage();
}
return $this->db;
}
///
private function discipline(){
echo $this->get_request_method();
if($this->get_request_method() != "GET")
{
$this->response('',406);
}
$risultato = array();
$result = $this->db->query('SELECT * FROM discipline' , PDO::FETCH_ASSOC);
$rows = count ($result);
if ($rows >0) {
//echo "Number of righe: $rows";
foreach($result as $row)
{
$risultato[] = $row;
}
$carso = $risultato;
echo json_encode($carso, JSON_PRETTY_PRINT);
$this->response($this->json($result), 200);
$data = $carso;
} else {
$this->response('',204); // If no records "No Content" status;
}
}
public function json($data){
if(is_array($data)){
return json_encode($data, JSON_PRETTY_PRINT);
}
}
}
// Initiate Library
$api = new API;
$api->processApi();
?>
是否尝试查找mysql函数的SQLite版本?SQLite是一个嵌入式数据库,所以它既不使用服务器,也不使用用户/密码。因此,您可以100%删除显示的代码。