diff options
| author | Felipe Pena <felipe@php.net> | 2008-10-10 19:49:42 +0000 |
|---|---|---|
| committer | Felipe Pena <felipe@php.net> | 2008-10-10 19:49:42 +0000 |
| commit | cefe0f3c22b9438f9213185ec5b59c05a3f5ff35 (patch) | |
| tree | 493c5e4f4c97c860b8382cff0b7166bc0f9780f5 /ext/pdo_sqlite/tests | |
| parent | 86f0b45ef8fdb4600666f7cd47a4b2a912a781ca (diff) | |
| download | php-git-cefe0f3c22b9438f9213185ec5b59c05a3f5ff35.tar.gz | |
- New test
Diffstat (limited to 'ext/pdo_sqlite/tests')
| -rw-r--r-- | ext/pdo_sqlite/tests/bug46139.phpt | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ext/pdo_sqlite/tests/bug46139.phpt b/ext/pdo_sqlite/tests/bug46139.phpt new file mode 100644 index 0000000000..1b546bf549 --- /dev/null +++ b/ext/pdo_sqlite/tests/bug46139.phpt @@ -0,0 +1,38 @@ +--TEST-- +Bug #46139 (PDOStatement->setFetchMode() forgets FETCH_PROPS_LATE) +--FILE-- +<?php + +require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc'; +$db = PDOTest::test_factory(dirname(__FILE__) . '/common.phpt'); + +class Person { + public $test = NULL; + public function __construct() { + var_dump($this->test); + } +} + +$stmt = $db->query("SELECT 'foo' test, 1"); +$stmt->setFetchMode(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, 'Person'); +$r1 = $stmt->fetch(); +printf("'%s'\n", $r1->test); + +$stmt = $db->query("SELECT 'foo' test, 1"); +$stmt->setFetchMode(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, 'Person'); +$r1 = $stmt->fetchAll(); +printf("'%s'\n", $r1[0]->test); + +$stmt = $db->query("SELECT 'foo' test, 1"); +$stmt->setFetchMode(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, 'Person'); +$r1 = $stmt->fetch(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE); +printf("'%s'\n", $r1->test); + +?> +--EXPECT-- +NULL +'foo' +NULL +'foo' +NULL +'foo' |
