0

PHP で Titanium を使用してデスクトップ アプリケーションを開発しています。私は MySQL DB を使用する PHP Web 開発者であり、SQLite DB を使用するデスクトップは初めてです

SQLite DB を開こうとすると、致命的なエラーがスローされます

私が使用したコードは

if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {
    sqlite_query($db, 'CREATE TABLE foo (bar varchar(10))');
    sqlite_query($db, "INSERT INTO foo VALUES ('fnord')");
    $result = sqlite_query($db, 'select bar from foo');
    var_dump(sqlite_fetch_array($result));
} else {
    die($sqliteerror);
}

PHP.net のサンプル コードのみ

PHP.net によると、SQLite は PHP 5 以降にバンドルされています。

Titanium Studio でのみスローされたエラー

私のXAMPPでは、すべて正常に動作します

手伝ってくれる?

4

1 に答える 1

2

SQLite の要件に関するPHP のマニュアル ページには、次のように書かれています。 The SQLite extension is enabled by default as of PHP 5.0. Beginning with PHP 5.4, the SQLite extension is available only via PECL.

Titanium Studio で使用されている PHP のバージョンを確認してください。

私はこれまでこの特定の IDE を使用したことはありませんが、PHP のバージョンおよびモジュール関連の情報を探すときは通常、次のようにします。

  1. PHP バイナリ (php.exe、php、php5、php-cgi など) を見つけます。(OSツールを使用して見つけてください)
  2. 実行$PHP_BINARY -vして、バイナリのバージョン情報を取得します。
  3. 実行$PHP_BINARY -mして、PHP の有効なモジュールの出力を取得します。
  4. 読み込まれたモジュールの中に sqlite がリストされていない場合は、extension_dir構成ディレクティブ (php.ini 内) が指すディレクトリに存在するかどうかを確認します。
  5. モジュールがファイルとして存在する場合は、extension = $NAME_OF_SQLITE_FILE(通常は php_sqlite.so または php_sqlite.dll) という行を追加して、動作するかどうかを確認しsqlite_open()ます。
  6. モジュールが存在しない場合は、IDE の管理者からコンパイル済みのバイナリを入手できるかどうか、またはソースから拡張機能をビルドするための具体的な指示があるかどうかを確認してください。
于 2012-04-07T02:45:31.443 に答える