web-dev-qa-db-ja.com

PHPでsqlite3を有効にする方法は?

UbuntuのPHPにsqlite3をインストールしようとしています。

apt-get php5-sqlite3をインストールし、php.iniを編集してsqlite3拡張機能を含めました。

phpinfo();を実行すると

SQLITE3
SQLite3 support  enabled  
sqlite3 library version  3.4.2  

上記のように、sqlite3が有効になっています。ただし、使用すると「クラスSQLite3が見つかりません」と表示されます

 new SQLite3("database");
88
Moon

編集:この回答は時代遅れですが、受け入れられているため削除できません。正解については、ステイシー・リチャーズのソリューションをご覧ください。

 Sudo apt-get install php5-cli php5-dev make
 Sudo apt-get install libsqlite3-0 libsqlite3-dev
 Sudo apt-get install php5-sqlite3
 Sudo apt-get remove php5-sqlite3
 cd ~
 wget http://pecl.php.net/get/sqlite3-0.6.tgz
 tar -zxf sqlite3-0.6.tgz
 cd sqlite3-0.6/
 Sudo phpize
 Sudo ./configure
 Sudo make
 Sudo make install
 Sudo Apache2ctl restart

buntu形式 からリッピングしました。

36
miccet

試してください:

apt-get install php5-sqlite

それは私のために働いた。

234
Stacey Richards

PHP7の場合、使用

Sudo apt-get install php7.0-sqlite3

apacheを再起動します

Sudo Apache2ctl restart
30

受け入れられた答えは、 フォーラムスレッド からの指示(以下に言い換える)の残りがなければ完了しません:

cd /etc/php5/conf.d

cat > sqlite3.ini
# configuration for php SQLite3 module
extension=sqlite3.so
^D

Sudo /etc/init.d/Apache2 restart
14
btk

SQLite3 PDOドライバーの名前はSQLite3ではなくSQLiteなので、次のことができます。

new SQLite("database");

SQLite2データベースの場合:

new SQLite2("database");
4
Tom Haigh

あなたがインストールしようとする前に、私が追加したいこと

apt-get install php5-sqlite

または

apt-get install php5-sqlite3 

指定されたパッケージが利用可能かどうかを検索:-

 # apt-cache search 'php5'

その後、あなたは得る:-

php5-rrd - rrd module for PHP 5

php5-sasl - Cyrus SASL extension for PHP 5

php5-snmp - SNMP module for php5

**php5-sqlite - SQLite module for php5**

php5-svn - PHP Bindings for the Subversion Revision control system

php5-sybase - Sybase / MS SQL Server module for php5

ここで、バージョンがサポートされているかどうかについてのアイデアを得ることができます..私のシステムではphp5-sqlite-php5のSQLiteモジュールです

**apt-get install php5-sqlite**
3
sanjeev

Ubuntu 18.04およびPHP 7.2の場合:

Sudo apt install php-sqlite3

3
Sudo apt-get install php5-cli php5-dev make

Sudo apt-get install libsqlite3-0 libsqlite3-dev

Sudo apt-get install php5-sqlite3

Sudo apt-get remove php5-sqlite3

cd ~

wget http://pecl.php.net/get/sqlite3-0.6.tgz

tar -zxf sqlite3-0.6.tgz

cd sqlite3-0.6/

Sudo phpize

Sudo ./configure

それは私のために働いた。

2
Bitcoin Mining

使用のみ:

Sudo apt-get install php5-sqlite

以降

Sudo service Apache2 restart
1
C47

Centos 6.7では、私の場合、ライブラリファイル/usr/lib64/php/modules/sqlite3.soがありませんでした。

yum install php-pdo 

vim /etc/php.d/sqlite3.ini
; Enable sqlite3 extension module
extension=sqlite3.so

Sudo service httpd restart
1
satishwin

これを試して:

Sudo apt-get --purge remove php5*
Sudo apt-get install php5 php5-sqlite php5-mysql
Sudo apt-get install php-pear php-apc php5-curl
Sudo apt-get autoremove
Sudo apt-get install php5-sqlite
Sudo apt-get install libapache2-mod-fastcgi php5-fpm php5
1
Hazem Hagrass

Debianディストリビューション用。 aptソースにdebianのメインリポジトリを追加するまで、何も機能しませんでした(どのように削除されたのかわかりません):Sudo vi /etc/apt/sources.list

そして追加

deb  http://deb.debian.org/debian  stretch main
deb-src  http://deb.debian.org/debian  stretch main

その後Sudo apt-get update(アップグレードも可能)、最後にSudo apt-get install php-sqlite3

0
vivoconunxino

これはここでdrれますが、私はこれで私の問題を修正しました:

私が知る限り、/usr/local/libにはlibsqlite3.so.0と呼ばれるlibsqlite3.so.0.8.6と呼ばれる障害のあるファイルがあります。私の知る限り、php7.3- *パッケージを介してインストールされています。

何かに必要な場合に備えて、ファイルの名前を変更しました。コマンドを使って:

cd /usr/local/libSudo mv libsqlite3.so.0 ./libsqlite3.so.0.back

ただし、削除することもできます:rm libsqlite3.so.0

私を答えに導くスレッド: link

これで私の問題が解決しました。あなたの問題も解決することを願っています:)

0
IncrediblePony

PHPのバージョンに依存します。 php7.0の場合、次のコマンドが機能します。
Sudo apt-get install php7.0-sqlite3
次に、Apacheサーバーを再起動します。
Sudo service Apache2 restart

0
doru