ID: 16179 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Open Bug Type: Scripting Engine problem Operating System: Windows 2002 PHP Version: 4.1.2 New Comment:
You are mixing the number of dimensions in the array... this can lead to strange things indeed. What I think happens is this: In the second assignment, the extra ["entity"] is seen as an index into the string "DBJ...", and since "entity" evaluates to zero, the first character of the string is changed. Because a character is expected, the string "ABrettEntry" is converted to a char, 'A'. You can see this if you change ["entity"] to [0] (or [1], then it changes the second character). It is easily circumvented by changing the first assignment to $property [ "src" ][ "brett" ][ "filename" ] = "DBJ_20020112.db.php"; Anyway, I don't think this is a bug in multi-dim-arrays, but perhaps the documentation is not clear? Perhaps this should be reclassified as a documentation problem? Cheerio, Marc. Previous Comments: ------------------------------------------------------------------------ [2002-03-20 05:10:57] [EMAIL PROTECTED] My php-Code: <? $property [ "src" ][ "brett" ] = "DBJ_20020112.db.php"; $property [ "src" ][ "brett" ][ "entity" ] = "ABrettEntry"; // ---------------------------------------- $GLOBALS[ "property" ] = $property; echo( "AUSGABE1 ::: ".$property["src"]["brett"]["entity"]."<BR>" ); echo( "AUSGABE2 ::: ". $property [ "src" ][ "brett" ]."<BR>" ); ?> And the result of this script looks like this: AUSGABE1 ::: A AUSGABE2 ::: ABJ_20020112.db.php ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16179&edit=1