To enable CURL and SQLITE3 on Windows with PHP 7.4 edit httpd.conf and php.ini as below:
httpd.conf:
# load php.ini from chosen directory
PHPIniDir "${SRVROOT}/php"
# load PHP 7.4 on Windows
LoadModule php7_module "${SRVROOT}/php/php7apache2_4.dll"
# load CURL on Windows
LoadFile "${SRVROOT}/php/libssh2.dll"
# load SQLITE3 on Windows
LoadFile "${SRVROOT}/php/libsqlite3.dll"
php.ini:
extension=curl
extension=pdo_sqlite
extension=sqlite3
Now CURL and SQLITE3 are enabled and working fine on Windows on PHP 7.4.
$encryption_key and all encryption features will be enabled only if the SQLite encryption module is installed. It's a proprietary, costly module. So if it's not present, supplying an encryption key will have absolutely no effect.
If you plan to have concurrent access to a SQLITE3 database, it is advised to change the default SQLite3::busyTimeout value (set to zero by default). Otherwise, you may get a "database locked" error while writing to the database.
With the timeout set to a non zero value, a write attempt to a locked database will wait for the lock to be released (within the timeout) before sending an error.
Note that the default value was set to 60 seconds on SQLITE2.
Ringkasan. dalam tutorial ini, kami akan menunjukkan cara membuat koneksi ke database SQLite dari PHP menggunakan PDO
PHP menyertakan ekstensi SQLite secara default sehingga Anda tidak perlu melakukan konfigurasi apa pun untuk membuatnya berfungsi dengan SQLite
Setup struktur proyek PHP dengan Composer
Pertama, buat folder proyek bernama
composer update
0 dan nama subfolder lainnya
composer update
1. Folder
composer update
1 digunakan untuk menyimpan semua kelas yang berhubungan dengan logika aplikasi dan database
Selanjutnya, buat file
composer update
_3 baru dengan kode berikut
{
"autoload": {
"psr-4": {
"App\\": "app/"
}
}
}
Code language: JavaScript (javascript)
_
Jika Anda tidak terbiasa dengan Komposer, Anda dapat memeriksanya di sini. Di PHP, kami menggunakan komposer sebagai alat untuk manajemen ketergantungan. Komposer memungkinkan Anda mendeklarasikan perpustakaan di proyek kami dan mengelola pembaruan secara otomatis
Di file komposer, Anda memetakan ruang nama
composer update
_4 dengan folder
composer update
5
Kemudian, buat nama subfolder lain
composer update
6 untuk menyimpan file database SQLite
Setelah itu, buka alat perintah, arahkan ke
composer update
0, dan ketik perintah berikut
composer update
Pesan berikut akan ditampilkan
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
Selain itu, Composer membuat folder baru bernama
composer update
8 seperti yang ditunjukkan pada tangkapan layar berikut
Terakhir, buat file bernama
composer update
_9 di folder root dan tambahkan kode berikut
require 'vendor/autoload.php';
Code language: PHP (php)
Mulai sekarang, jika Anda ingin menggunakan classé apa pun di folder
composer update
1, Anda cukup mendeklarasikan dan menggunakannya
Membuat koneksi database ke database SQLite
Pertama, buat file baru
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
_1 di dalam folder
composer update
1 dan tambahkan kelas baru bernama
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
3 sebagai berikut
namespace App;
class Config {
/**
* path to the sqlite file
*/
const PATH_TO_SQLITE_FILE = 'db/phpsqlite.db';
}
Code language: PHP (php)
Konstanta
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
_4 digunakan untuk menyimpan path ke file database sqlite yang berada di folder
composer update
6
Kedua, buat file
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
6 baru dan tambahkan kelas
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
7 sebagai berikut
namespace App;
/**
* SQLite connnection
*/
class SQLiteConnection {
/**
* PDO instance
* @var type
*/
private $pdo;
/**
* return in instance of the PDO object that connects to the SQLite database
* @return \PDO
*/
public function connect() {
if ($this->pdo == null) {
$this->pdo = new \PDO("sqlite:" . Config::PATH_TO_SQLITE_FILE);
}
return $this->pdo;
}
}
Code language: PHP (php)
Untuk membuat koneksi database ke database SQLite, Anda perlu membuat instance baru dari kelas
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
8 dan meneruskan string koneksi ke konstruktor objek
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
8
Misalkan file database SQLite ada di folder
composer update
6, Anda menggunakan string koneksi berikut
sqlite:db/phpsqlite.db
Code language: PHP (php)
Karena Anda menyimpan jalur ke file database sqlite di kelas
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
3, Anda cukup menggunakannya untuk membuat string koneksi
Perhatikan bahwa ketika PHP terhubung ke database SQLite yang tidak ada, PHP akan membuat file database SQLite baru
require 'vendor/autoload.php';
Code language: PHP (php)
_2 digunakan untuk menyimpan instance dari objek
>composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Code language: Shell Session (shell)
8. Dalam metode
require 'vendor/autoload.php';
Code language: PHP (php)
_4, Anda memeriksa apakah koneksi database telah dibuat. Jika tidak, Anda membuat instance baru dari objek PDO, jika tidak, Anda mengembalikan objek PDO
Setelah semua kelas berada di tempatnya, Anda menggunakan perintah berikut untuk membuat file muat otomatis
composer dump-autoload -o
Untuk membuat koneksi ke database SQLite, Anda menggunakan kode berikut di file
composer update
9
use App\SQLiteConnection;
$pdo = (new SQLiteConnection())->connect();
if ($pdo != null)
echo 'Connected to the SQLite database successfully!';
else
echo 'Whoops, could not connect to the SQLite database!';
Code language: SQL (Structured Query Language) (sql)
Jika Anda memeriksa folder
composer update
6, Anda akan melihat file dengan nama
require 'vendor/autoload.php';
Code language: PHP (php)
7 dibuat.
Saat Anda membuat instance baru dari PDO, PDOException akan selalu muncul jika koneksi gagal
Untuk menangani pengecualian, Anda dapat menggunakan blok ________13______8 sebagai berikut
try {
$this->pdo = new \PDO("sqlite:" . Config::PATH_TO_SQLITE_FILE);
} catch (\PDOException $e) {
// handle the exception here
}
Code language: PHP (php)
Dalam tutorial ini, Anda telah mempelajari cara menyiapkan struktur proyek PHP dan membuat koneksi database ke database SQLite
Bagaimana cara menggunakan database SQLite di PHP?
Dalam bab ini, Anda akan mempelajari cara menggunakan SQLite dalam program PHP. .
Instalasi. Ekstensi SQLite3 diaktifkan secara default pada PHP 5. 3. .
API Antarmuka PHP. .
Terhubung ke Basis Data. .
Buat Tabel. .
Operasi MASUKKAN. .
Operasi PILIH. .
Operasi PEMBARUAN. .
Operasi HAPUS
Bagaimana cara membuat basis data SQLite?
Untuk membuat database baru di SQLite, Anda perlu menentukan database saat membuka SQLite, atau membuka file yang ada menggunakan. buka . Anda dapat menggunakan. perintah database untuk melihat daftar database yang ada.
Bisakah PHP bekerja dengan SQLite?
PHP menyediakan dua ekstensi SQLite secara default sejak versi 5. 0 . Ekstensi SQLite terbaru dikenal sebagai ekstensi sqlite3 yang termasuk dalam PHP 5. 3+. Ekstensi sqlite3 menyediakan antarmuka untuk mengakses SQLite 3. sqlite3 menyertakan antarmuka kelas ke perintah SQL.
Bagaimana cara membuka database SQLite di PHP?
Untuk membuat koneksi database ke database SQLite, Anda perlu membuat instance baru dari kelas PDO dan meneruskan string koneksi ke konstruktor objek PDO. Because you store the path to the sqlite database file in the Config class, you just simply use it to construct the connection string.