12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- --TEST--
- PDO Common: PDOStatement iterator
- --EXTENSIONS--
- pdo
- --SKIPIF--
- <?php
- $dir = getenv('REDIR_TEST_DIR');
- if (false == $dir) die('skip no driver');
- require_once $dir . 'pdo_test.inc';
- PDOTest::skip();
- ?>
- --FILE--
- <?php
- if (getenv('REDIR_TEST_DIR') === false) putenv('REDIR_TEST_DIR='.__DIR__ . '/../../pdo/tests/');
- require_once getenv('REDIR_TEST_DIR') . 'pdo_test.inc';
- $db = PDOTest::factory();
- $db->exec('CREATE TABLE test(id int NOT NULL PRIMARY KEY, val VARCHAR(10), grp VARCHAR(10))');
- $db->exec('INSERT INTO test VALUES(1, \'A\', \'Group1\')');
- $db->exec('INSERT INTO test VALUES(2, \'B\', \'Group2\')');
- $SELECT = 'SELECT val, grp FROM test';
- $stmt = $db->prepare($SELECT);
- $stmt->execute();
- $stmt->setFetchMode(PDO::FETCH_NUM);
- foreach ($stmt as $data)
- {
- var_dump($data);
- }
- class Test
- {
- function __construct($name = 'N/A')
- {
- echo __METHOD__ . "($name)\n";
- }
- }
- unset($stmt);
- foreach ($db->query($SELECT, PDO::FETCH_CLASS, 'Test') as $data)
- {
- var_dump($data);
- }
- unset($stmt);
- $stmt = $db->query($SELECT, PDO::FETCH_CLASS, 'Test', array('WOW'));
- foreach($stmt as $data)
- {
- var_dump($data);
- }
- ?>
- --EXPECTF--
- array(2) {
- [0]=>
- string(1) "A"
- [1]=>
- string(6) "Group1"
- }
- array(2) {
- [0]=>
- string(1) "B"
- [1]=>
- string(6) "Group2"
- }
- Test::__construct(N/A)
- object(Test)#%d (2) {
- ["val"]=>
- string(1) "A"
- ["grp"]=>
- string(6) "Group1"
- }
- Test::__construct(N/A)
- object(Test)#%d (2) {
- ["val"]=>
- string(1) "B"
- ["grp"]=>
- string(6) "Group2"
- }
- Test::__construct(WOW)
- object(Test)#%d (2) {
- ["val"]=>
- string(1) "A"
- ["grp"]=>
- string(6) "Group1"
- }
- Test::__construct(WOW)
- object(Test)#%d (2) {
- ["val"]=>
- string(1) "B"
- ["grp"]=>
- string(6) "Group2"
- }
|