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");
編集:この回答は時代遅れですが、受け入れられているため削除できません。正解については、ステイシー・リチャーズのソリューションをご覧ください。
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形式 からリッピングしました。
試してください:
apt-get install php5-sqlite
それは私のために働いた。
PHP7の場合、使用
Sudo apt-get install php7.0-sqlite3
apacheを再起動します
Sudo Apache2ctl restart
受け入れられた答えは、 フォーラムスレッド からの指示(以下に言い換える)の残りがなければ完了しません:
cd /etc/php5/conf.d
cat > sqlite3.ini
# configuration for php SQLite3 module
extension=sqlite3.so
^D
Sudo /etc/init.d/Apache2 restart
SQLite3 PDOドライバーの名前はSQLite3ではなくSQLiteなので、次のことができます。
new SQLite("database");
SQLite2データベースの場合:
new SQLite2("database");
あなたがインストールしようとする前に、私が追加したいこと
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**
Ubuntu 18.04およびPHP 7.2の場合:
Sudo apt install php-sqlite3
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 apt-get install php5-sqlite
以降
Sudo service Apache2 restart
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
これを試して:
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
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
これはここでdrれますが、私はこれで私の問題を修正しました:
私が知る限り、/usr/local/lib
にはlibsqlite3.so.0
と呼ばれるlibsqlite3.so.0.8.6
と呼ばれる障害のあるファイルがあります。私の知る限り、php7.3- *パッケージを介してインストールされています。
何かに必要な場合に備えて、ファイルの名前を変更しました。コマンドを使って:
cd /usr/local/lib
Sudo mv libsqlite3.so.0 ./libsqlite3.so.0.back
ただし、削除することもできます:rm libsqlite3.so.0
私を答えに導くスレッド: link
これで私の問題が解決しました。あなたの問題も解決することを願っています:)
PHPのバージョンに依存します。 php7.0の場合、次のコマンドが機能します。Sudo apt-get install php7.0-sqlite3
次に、Apacheサーバーを再起動します。Sudo service Apache2 restart