|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2009-10-27 06:22 UTC] felipe@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 11:00:01 2025 UTC |
Description: ------------ PDO::fetch() only returns date fields on the first call. subsequent calls return empty strings instead of dates. Configure Command => './configure' '-- prefix=/usr/local/php' '--with-apxs2' '--without-pdo-sqlite' '--without-mysql' php.ini-settings don't seem to matter, I only have these: date.timezone = "Europe/Berlin" include_path = "/Library/WebServer/php-includes/" allow_call_time_pass_reference = Off expose_php = Off magic_quotes_gpc = Off register_argc_argv = Off output_buffering = On plus settings for xdebug, apc and memcache, I already tried disabling them, no difference. PDO_FIREBIRD is loaded as an extension:extension=pdo_firebird.so Reproduce code: --------------- isql: SQL> create database 'test.fdb'; SQL> CREATE TABLE FOO (ID INTEGER, BAR DATE); SQL> INSERT INTO FOO (ID, BAR) VALUES ('1', '11.04.2009'); SQL> INSERT INTO FOO (ID, BAR) VALUES ('2', '12.04.2009'); SQL> INSERT INTO FOO (ID, BAR) VALUES ('3', '13.04.2009'); php: <?php $oPDO = new PDO( 'firebird:dbname=localhost:test.fdb;charset=ISO8859_1', 'sysdba', 'masterkey', array( PDO::ATTR_PERSISTENT => true, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ ) ); $oStmt = $oPDO->query('select id, bar from foo'); foreach($oStmt as $oRow) { var_dump($oRow); } ?> Expected result: ---------------- object(stdClass)#3 (2) { ["ID"]=> string(1) "1" ["BAR"]=> string(10) "2009-04-11" } object(stdClass)#4 (2) { ["ID"]=> string(1) "2" ["BAR"]=> string(10) "2009-04-12" } object(stdClass)#3 (2) { ["ID"]=> string(1) "3" ["BAR"]=> string(10) "2009-04-13" } Actual result: -------------- object(stdClass)#3 (2) { ["ID"]=> string(1) "1" ["BAR"]=> string(10) "2009-04-11" } object(stdClass)#4 (2) { ["ID"]=> string(1) "2" ["BAR"]=> string(0) "" } object(stdClass)#3 (2) { ["ID"]=> string(1) "3" ["BAR"]=> string(0) "" }