/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/sqlite3/tests/sqlite3_bind_bug68849.phpt
69 строк
1 KB
Max Semenik
Migrate skip checks to --EXTENSIONS--, p4
08 апр 2021, 11:36
08 апр 2021, 11:36
7f2f0c0
Код
Авторство
О чём код?
--TEST-- Bug #68849 bindValue is not using the right data type --EXTENSIONS-- sqlite3 --FILE-- <?php $db = new SQLite3(':memory:'); $db->exec("CREATE TABLE test (a INTEGER, b TEXT, c REAL);" . "INSERT INTO test VALUES (1, 'hello', 3.14);" . "INSERT INTO test VALUES (3, 'world', 3.15);" . "INSERT INTO test VALUES (0, '42', 0.42);" ); $s = $db->prepare('SELECT * FROM test WHERE (a+2) = ?;'); $s->bindValue(1, 3); $r = $s->execute(); var_dump($r->fetchArray(SQLITE3_ASSOC)); $s = $db->prepare('SELECT * FROM test WHERE a = ?;'); $s->bindValue(1, true); $r = $s->execute(); var_dump($r->fetchArray(SQLITE3_ASSOC)); $s = $db->prepare('SELECT * FROM test WHERE a = ?;'); $s->bindValue(1, false); $r = $s->execute(); var_dump($r->fetchArray(SQLITE3_ASSOC)); $s = $db->prepare('SELECT * FROM test WHERE c = ?;'); $s->bindValue(1, 3.15); $r = $s->execute(); var_dump($r->fetchArray(SQLITE3_ASSOC)); ?> --EXPECT-- array(3) { ["a"]=> int(1) ["b"]=> string(5) "hello" ["c"]=> float(3.14) } array(3) { ["a"]=> int(1) ["b"]=> string(5) "hello" ["c"]=> float(3.14) } array(3) { ["a"]=> int(0) ["b"]=> string(2) "42" ["c"]=> float(0.42) } array(3) { ["a"]=> int(3) ["b"]=> string(5) "world" ["c"]=> float(3.15) }