On Thu, 2005-11-17 at 19:05, Rasmus Lerdorf wrote:
> Robert Cummings wrote:
> > On Thu, 2005-11-17 at 18:33, Ilia Alshanetsky wrote:
> >> Andreas Korthaus wrote:
> >>> OK, but by dropping {} for strings you also remove the possibility to
> >>> have a convention like "[] for arrays and {} for strings".
> >>> If I could decide I would drop {} for arrays and [] for strings, but I
> >>> fear I will not be asked to decide... ;-)
> >> You may think that {} and [] are different, but in reality same code
> >> deals with both. Having two constructs for the same behavior is silly
> >> and leads to confusing, hard to read code. Especially so when you
> >> consider the fact {} has another meaning that is completely different.
> >
> > That should have been considered before everyone was told that [] was
> > deprecated for strings in favour of {}.
>
> Right, that was a mistake which we are fixing now. Removing [] doesn't
> seem to be a viable option, so rather than continue to tell people to
> stop using [] since it is never going to go away, the main decision here
> was to undeprecate []. Whether we will eventually remove {} or not
> remains to be seen. The initial idea was to try to remove it in PHP6
> and in order to help people easily find where these are used, add an
> E_STRICT for it in PHP 5.1.
Ok, then that's not so bad. PHP6 is undoubtedly some ways off giving
adequate time to revert such code. I hate that sneaky E_STRICT stuff :)
BTW, I'm with the other guys on the convention argument too. I find that
reading my code now that I've gotten into the habit of always using {}
for strings, that I can easily pick out where my string indexing is
happening versus array indexing.
Cheers,
Rob.
--
.------------------------------------------------------------.
| InterJinn Application Framework - http://www.interjinn.com |
:------------------------------------------------------------:
| An application and templating framework for PHP. Boasting |
| a powerful, scalable system for accessing system services |
| such as forms, properties, sessions, and caches. InterJinn |
| also provides an extremely flexible architecture for |
| creating re-usable components quickly and easily. |
`------------------------------------------------------------'
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php