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 等)。(使用您的操作系统工具找到它)
  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 回答