PHPで$db = new SQLite3("somedb.db");
を実行した場合にエラーが発生するかどうかを確認するにはどうすればよいですか?今、$db
は本当に私に何らかのエラーを与えませんか?PHP SQLite3エラー?
ファイルの存在を確認できますが、接続を開いたときに他のエラーが発生する可能性があるかどうかはわかりません。
PHPで$db = new SQLite3("somedb.db");
を実行した場合にエラーが発生するかどうかを確認するにはどうすればよいですか?今、$db
は本当に私に何らかのエラーを与えませんか?PHP SQLite3エラー?
ファイルの存在を確認できますが、接続を開いたときに他のエラーが発生する可能性があるかどうかはわかりません。
試してみてください。
echo $db->lastErrorMsg();
あなたは例外を有効にして、try-catchブロックでインスタンス化しなければなりません。
ドキュメントからは分かりませんが、データベースを開くためにコンストラクタを使用すると、エラー時に例外がスローされます。
さらに、SQLITE3_OPEN_READWRITEフラグを2番目の引数に設定すると、データベースが存在しない場合(作成するのではなく)、例外がスローされます。
class Database extends SQLite3
{
function __construct($dbName)
{
$this->enableExceptions(true);
try
{
parent::__construct($dbName, SQLITE3_OPEN_READWRITE);
}
catch(Exception $ex) { die($ex->getMessage()); }
}
http://php.net/manual/en/sqlite3.lasterrormsg.php –