|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2010-12-11 16:12 UTC] iliaa@php.net
-Status: Open
+Status: Bogus
[2010-12-11 16:12 UTC] iliaa@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 08:00:01 2025 UTC |
Description: ------------ The SQLite3Result::columnType() method returns SQLITE3_NULL (5) when column_number exceeds the column count. It seems more appropriate for it to return FALSE. Test script: --------------- $db = new SQLite3(':memory:'); $db->exec('CREATE TABLE test (whatever INTEGER)'); $db->exec('INSERT INTO test (whatever) VALUES (1)'); $result = $db->query('SELECT * FROM test'); while ($row = $result->fetchArray(SQLITE3_NUM)) { var_dump($result->columnType(0)); // int(1) [SQLITE3_INTEGER] // Seems returning false is more appropriate. var_dump($result->columnType(3)); // int(5) [SQLITE3_NULL] } $result->finalize(); $db->close(); echo "Done\n"; Expected result: ---------------- int(1) bool(false) Done Actual result: -------------- int(1) int(5) Done