Re: [PHP-DEV] PHP 4.0 Bug #8325: numeric strings used as keys are converted to longs From: Ignacio Vazquez-Abrams (ignacio <email protected>)
Date: 12/19/00

On 19 Dec 2000 cynic <email protected> wrote:

> From: cynic <email protected>
> Operating system: *
> PHP version: 4.0 Latest CVS (19/12/2000)
> PHP Bug Type: Feature/Change Request
> Bug description: numeric strings used as keys are converted to longs
>
> (Actually, this is for PHP 4 versions up to 4.0.4 RC6, but it ain't in the version list.)
>
> I don't want to sound harsh or something, and this behavior seemed to be accepted as feature from what I saw elsewhere in the bug database (can't find it, though), but I think it shouldn't be that way.
>
> Current behavior:
>
> <?
> $p = 1 ;
> settype( $p , 'string' ) ;
> $a = array( $p => 'aaaa' ) ;
> var_dump( $a ) ;
> ?>
>
> output (note: casting within the array() doesn't help):
> string(1) "1"
> array(1) {
> [1]=>
> string(4) "aaaa"
> }
>
>
> 'Right' (YMMV) behavior:
> string(1) "1"
> array(1) {
> ["1"]=>
> string(4) "aaaa"
> }
>

Actually, this behavior is displayed for any key, i.e., if the key is a
string (e.g., "name"), it is displayed without quotes.

-- 
Ignacio Vazquez-Abrams  <ignacio <email protected>>

-- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: php-dev-unsubscribe <email protected> For additional commands, e-mail: php-dev-help <email protected> To contact the list administrators, e-mail: php-list-admin <email protected>