#32395 [Opn->Fbk]: odbc_execute modifies the param array

From: Date: Mon, 21 Mar 2005 21:45:38 +0000
Subject: #32395 [Opn->Fbk]: odbc_execute modifies the param array
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-75687@lists.php.net to get a copy of this message
ID: 32395 Updated by: sniper@php.net Reported By: treehousetim at gmail dot com -Status: Open +Status: Feedback Bug Type: ODBC related Operating System: Windows 2000/XP PHP Version: 4.3.10 New Comment: Please change print_r -> var_dump to get more detailed information out of the $paramList variable. Previous Comments: ------------------------------------------------------------------------ [2005-03-21 18:38:28] treehousetim at gmail dot com Description: ------------ Calling odbc_execute modifies the input paramList array. This happens even when I try to make a copy of the array before passing it to odbc_execute. Specifically, null parameters are changed to zero length strings. Reproduce code: --------------- <?php function x( $query, $paramList ) { $result = odbc_execute( $query, $paramList ); $paramList['timg'] = "Tim Gallagher"; } // change the server and database below to the correct values for your setup $connection = 'DRIVER={SQL Server};SERVER=server;DATABASE=database'; $handle = odbc_connect( $connection, '', '' ); $query = odbc_prepare( $handle, "INSERT INTO TEST (ID,CHECK_LONG,CHECK_VARCHAR) VALUES (?, ?, ? )" ); $paramList[0] = 44; $paramList[1] = null; $paramList[2] = null; echo gettype($paramList[2]) . "\n"; // echos NULL x( $query, $paramList ); echo gettype($paramList[2]) . "\n"; // echos string print_r( $paramList ) ?> Expected result: ---------------- NULL string Array ( [0] => 44 [1] => [2] => ) Actual result: -------------- NULL NULL Array ( [0] => 44 [1] => [2] => ) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=32395&edit=1

« previous php.bugs (#75687) next »