Php 为什么不是';当我试图用错误的加密密钥打开文件时,SQLite是否给了我一个错误?

Php 为什么不是';当我试图用错误的加密密钥打开文件时,SQLite是否给了我一个错误?,php,sqlite,Php,Sqlite,我在网上找不到任何关于这种行为的信息,因此非常感谢您的帮助 使用以下代码时: //create file with encryption key "test1" $tempDB = new \SQLite3("temp.db", SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE, "test1"); //attempt to open the same file using key "

我在网上找不到任何关于这种行为的信息,因此非常感谢您的帮助

使用以下代码时:

//create file with encryption key "test1"
$tempDB = new \SQLite3("temp.db", SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE, "test1");

//attempt to open the same file using key "test2"
$tempDB = new \SQLite3("temp.db", SQLITE3_OPEN_READWRITE, "test2"); 

var_dump($tempDB->lastErrorCode()); //int(0)  : no error?

这是预期的行为吗?如果是这样,我如何检查给定SQLite3文件的密钥是否正确?

是的,我是个白痴。浏览完之后,我假设加密是PHP+SQLite附带的一个模块,或者您可以轻松地安装和使用它

事实并非如此。要使用此模块,您必须执行以下操作。啊

我的代码只是忽略了参数,如下所示:

加密和解密SQLite数据库时使用的可选加密密钥。如果未安装SQLite加密模块,此参数将无效


有各种模块。请看:这是否回答了您的问题?