1

PHPとsqliteで何かを作ろうとしています。sqlite3ライブラリとpdo_sqlite3ライブラリの両方がロードされ(php -mによる)、php.iniはライブラリを追加しますが、関数(sqlite_open()またはsqlite_versioninfo())がないという致命的なエラーが発生します見つかりません。phpinfo()は、両方のライブラリがロードされていることを示しています。では、なぜそれらを使用できないのですか?

私のセットアップに関するいくつかの情報:

私はdebianで実行しており、Apache2とPHP5.4.4-4を実行しています。PHPをどのようにインストールしたか(どうやらapt-getではない)を思い出せませんが、Apacheから起動します。

の出力php -m

root @ ns:〜#php-m[PHPモジュール]bcmathbz2カレンダーコアctypecurldate dba dom ereg exif fileinfo filter ftp gettext hash iconv imagick json libxml mbstring mhash mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlitePharposixリフレクションセッションshmopsimpleXMLソケットSPLsqlite3ssh2標準sysvmsgsysvsemsysvshmトークナイザーwddxxmlxmlreader xmlwriter zip zlib

[Zendモジュール]

正確なエラーテキストはPHP Fatal error: Call to undefined function sqlite_libversion() in [file] on line 14であり、コマンドラインとWebサーバーの両方で発生します。

他に追加することがあれば、ここに追加します。

4

2 に答える 2

1

sqlite拡張機能の関数を使用していますが、別のsqlite3拡張機能を有効にしました。

pdo_sqlite3はpdo専用です。

于 2012-12-26T02:57:03.543 に答える
0

php-fpmを使用してphpを実行していて、php-fpmの開始後にライブラリをコンパイルした場合は、php-fpmを再起動する必要があります。そうすると、新しいライブラリが有効になります。

于 2012-12-26T02:33:05.583 に答える