ID: 13912 Updated by: cnewbill Reported By: [EMAIL PROTECTED] Old Status: Open Status: Bogus Bug Type: Arrays related Operating System: Redhat Linux - Kernel 2.4.12 PHP Version: 4.0.6 New Comment:
RTM http://www.php.net/manual/en/migration4.strings.php -Chris Previous Comments: ------------------------------------------------------------------------ [2001-11-02 17:38:38] [EMAIL PROTECTED] A parse error results when an increment or decrement operator is used in an array index that falls between double quotes. For example: <? $a = array(1 => "un", "deux", "trois", "quatre", "cinq"); $i = 1; while ($i < 5) echo "Number $i is $a[$i++]<br />"; ?> Yields -> Parse error: parse error, expecting `']'' in public_html/testarray.php on line 4 While this works fine: while ($i < 5) echo "Number $i is ". $a[$i++] ."<br />"; I think this is part of a larger issue of resolving references inside quoted array indexes. It seems an error occurs whenever using an index that's anything more complicated than a literal value or a simple variable. For example, given a function returnNumber() that simply returns whatever number you pass to it, this line produces a parse error: echo "Number 2 is $a[returnNumber(2)]<br />"; While this one prints out the translation for the number 2, as expected: echo "Number 2 is ".$a[returnNumber(2)]."<br />"; ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=13912&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]