Maison >développement back-end >tutoriel php >Un exemple d'utilisation de la classe de base de données encapsulée php pour se connecter à la base de données sqlite3
La base de données sqlite n'utilise qu'un seul fichier. Elle est petite et pratique, c'est donc une très bonne base de données intégrée. L'article suivant vous présente principalement les informations pertinentes sur php en utilisant la classe db encapsulée pour vous connecter à sqlite3. utilise un exemple de code L'introduction est très détaillée, les amis dans le besoin peuvent s'y référer.
Avant-propos
L'extension SQLite3 sera activée par défaut dans PHP 5.3.0+ et supérieur. Cela peut être désactivé au moment de la compilation en utilisant --without-sqlite3.
Les utilisateurs Windows peuvent utiliser cette extension en activant php_sqlite3.dll. php_sqlite3.dll est inclus par défaut dans les distributions PHP après PHP 5.3.0.
Pour des instructions d'installation détaillées, veuillez consulter le tutoriel PHP et son site officiel.
Cet article présente principalement le contenu pertinent sur la classe db encapsulant php pour se connecter à sqlite3. Il est partagé pour la référence et l'étude de chacun. Je ne dirai pas grand-chose ci-dessous, jetons un coup d'œil à l'introduction détaillée.
Exemple de code :
<?php class dbManager{ public $db; function __construct(){ if(!file_exists('./db.php')){ $this->init(); return; } $this->db = new SQLite3('./db.php'); } function init(){ $this->db = new SQLite3('./db.php'); // TODO: } function changes(){ return $this->db->changes(); } function query($sql,$param=null,$memb=null){ $stmt=$this->db->prepare($sql); if(!$stmt) return false; if($param){ if(is_array($param)){ for($i=0;$i<count($param);$i++) $stmt->bindValue($i+1,$param[$i]); }else{ $stmt->bindValue(1,$param); } } $rs=$stmt->execute(); if(!$rs){ $stmt->close(); return false; } $arr=$rs->fetchArray(SQLITE3_NUM); $rs->finalize(); $stmt->close(); if(!$arr) return null; if(!$memb) return $arr; $res=array(); for($i=0;$i<count($memb);$i++){ $res[$memb[$i]]=$arr[$i]; } return $res; } function queryAll($sql,$param=null,$memb=null){ $stmt=$this->db->prepare($sql); if(!$stmt) return false; if($param){ if(is_array($param)){ for($i=0;$i<count($param);$i++) $stmt->bindValue($i+1,$param[$i]); }else{ $stmt->bindValue(1,$param); } } $rs=$stmt->execute(); if(!$rs){ $stmt->close(); return false; } $res=array(); while($arr=$rs->fetchArray(SQLITE3_NUM)){ if(!$memb) { $res[]=$arr; continue; } if(count($memb)==1 && $memb[0]==null){ $res[]=$arr[0]; continue; } $it=array(); for($i=0;$i<count($memb);$i++){ $it[$memb[$i]]=$arr[$i]; } $res[]=$it; } $rs->finalize(); $stmt->close(); return $res; } function querySingle($sql,$param=null){ $res=$this->query($sql,$param); if(!$res) return false; return $res[0]; } function querySingleAll($sql,$param=null){ $stmt=$this->db->prepare($sql); if(!$stmt) return false; if($param){ if(is_array($param)){ for($i=0;$i<count($param);$i++) $stmt->bindValue($i+1,$param[$i]); }else{ $stmt->bindValue(1,$param); } } $rs=$stmt->execute(); if(!$rs){ $stmt->close(); return false; } $res=array(); while($arr=$rs->fetchArray(SQLITE3_NUM)){ $res[]=$arr[0]; } $rs->finalize(); $stmt->close(); return $res; } function exec($sql,$param=null){ $stmt=$this->db->prepare($sql); if(!$stmt) return false; if($param){ if(is_array($param)){ for($i=0;$i<count($param);$i++) $stmt->bindValue($i+1,$param[$i]); }else{ $stmt->bindValue(1,$param); } } $rs=$stmt->execute(); if($rs) { $res=true; $rs->finalize(); }else{ $res=false; } $stmt->close(); return $res; } function begin(){ return $this->exec('BEGIN'); } function rollback(){ return $this->exec('ROLLBACK'); } function commit(){ return $this->exec('COMMIT'); } function escapeString($s){ return $this->db->escapeString($s); } //最新插入的id function lastInsertRowID(){ return $this->db->lastInsertRowID(); } function lastErrorMsg (){ return $this->db->lastErrorMsg(); } } ?>
PDO prend en charge la migration de base de données, si votre Si vous avez déployé une variété de bases de données à l'avenir, puis utilisez-le. En même temps, PDO est conçu en C et a une efficacité d'exécution élevée. Il a été packagé en tant que composant de bibliothèque d'extension de PHP. Il fonctionne rapidement et est efficace. 🎜>
Résumé
Articles qui pourraient vous intéresser :Analyse et explication de la méthode de simulation des requêtes http en PHP
Explication sur la façon d'utiliser PHP pour implémenter la technologie socket push
Explication sur la façon dont PHP peut obtenir l'adresse de livraison partagée WeChat
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!