PHP 4.0 Bug #7569 Updated: Transmuting indices
| From: | waldschrott@php.net | Date: | Wed, 01 Nov 2000 17:18:29 +0000 |
| Subject: | PHP 4.0 Bug #7569 Updated: Transmuting indices | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-36684@lists.php.net to get a copy of this message | ||
ID: 7569
Updated by: waldschrott
Reported By: ignacio@openservices.net
Status: Feedback
Bug Type: Scripting Engine problem
Assigned To:
Comments:
Please provide a reduced code fragment (<15 lines) producing
this behaviour.
Put no database queries etc. in it to ensure that we can
reproduce it easily.
Previous Comments:
---------------------------------------------------------------------------
[2000-11-01 11:46:51] ignacio@openservices.net
(FYI: actually using 2000.10.27 CVS)
Here's a good one.
I have an array $kind:
"""
Array
(
[Advertising Space] => Array
(
[] => Array
(
[0] => 100
[1] => 160
)
)
...
)
"""
I pull a record ($row1) from an MS-SQL table (via Sybase-CT):
"""
Array
(
[0] => Advertising Space
[KindNm] => Advertising Space
[1] =>
[SubKindNm] => // This is a null string: ""; strlen() gives 0
[2] =>
[SubSubKindNm] =>
[3] => 100
[GrantKindID] => 100
)
"""
I then do a 'print_r($kind[$row1["KindNm"]][$row1["SubKindNm"]]);':
"""
<br>
<b>Warning</b>: Undefined offset: 0 in <b>/path/to/script/script.php3</b>
on line <b>(line with print_r)</b><br>
"""
I know that it's the second index because
'print_r($kind[$row1["KindNm"]]);' works just fine.
So somewhere along the line "" is being changed to 0.
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=7569