Cet article présente principalement la méthode de configuration de php utilisant pdo pour se connecter à sqlite3, et combine le formulaire d'exemple avec une analyse plus détaillée des précautions associées pour que php fonctionne sqlite3 basé sur pdo, qui sont requis Les amis peuvent se référer à
Cet article décrit la méthode de configuration pour utiliser PDO pour se connecter à sqlite3. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Quand je viens de commencer à utiliser php+sqlite, j'ai toujours pensé que j'utilisais sqlite3. En fait, ce n'était pas le cas de PHP. à partir de php5 >=5.3.0 Support sqlite3
Veuillez vous référer au document officiel http://www.php.net/manual/zh/sqlite3.open.php
Méthode par défautInterface :
public void SQLite3::open ( string $filename [, int $flags = SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE [, string $encryption_key ]] )
Utilisation Lors de l'exploitation de la base de données avec PHP, j'ai constaté que PHP ne prend en charge que Sqlite2 par défaut et ne prend pas en charge la dernière version de Sqlite3. Si vous souhaitez prendre en charge SQLite3, vous devez utiliser PDO. Pour utiliser PDO, vous devez charger les deux modules php_pdo.dll et php_pdo_sqlite.dll dans php.ini. Comme suit :
extension=php_pdo.dll extension=php_pdo_sqlite.dll
Si pdo n'est pas utilisé, même si vous activez les paramètres ci-dessus, vous utilisez toujours sqlite2. Si vous ne me croyez pas, visitez la base de données générée et voyez s'il y a un. invite au début du fichier :
** Ce fichier contient une base de données SQLite 2.1 **
Lorsque l'environnement php n'active pas la configuration prise en charge ci-dessus, le l'erreur suivante sera signalée :
Erreur fatale : Appel à la fonction non définie sqlite_open()
Exemple sqlite3 :
<html> <?php //$dsn = 'sqlite:sql.db'; try { //$dbh = new PDO($dsn, $user, $password); //建立连接 // $dbh = new PDO('sqlite:yourdatabase.db'); $dbh = new PDO('sqlite:itlife365.com'); echo 'Create Db ok' ; //建表 $dbh->exec("CREATE TABLE itlife365(id integer,name varchar(255))"); echo 'Create Table itlife365 ok<BR>'; $dbh->exec("INSERT INTO itlife365 values(1,'itlife365.com')"); echo 'Insert Data ok<BR>'; $dbh->beginTransaction(); $sth = $dbh->prepare('SELECT * FROM itlife365'); $sth->execute(); //获取结果 $result = $sth->fetchAll(); print_r($result); $dsn=null; } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); $dsn = null; } ?> </html> <?php $dbh = null;//或使用unset($dbh); ?>
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!