Hi everybody,

I first want to personally thank everybody who have voiced their opinions on
this subject as it shows how much concern you all have for PHP.

To give a bit of background, I am one of the PHP Google Summer of Code
students and part of my project was to port/create a PHP 6 application,
namely, the Jaws CMS. My experience proved to be very instructive in terms
of evaluating the new functionalities of PHP 6.

My experience with unicode.semantics has been very frustrating. Most of the
mainstream projects cannot control their environments and have to be as
portable as possible. To create a portable application for PHP 6, you have
to consider the two different unicode.semantics scenarios AND the
possibility that the switch, for some reason, might be turned on or off at
any time in the future. Even if you don't care about Unicode and/or have
never heard about it, that is very important for you.

I have one specific example of where this can be a HUGE headache. Let's say
you have some serialized configuration files, saved with unicode.semantics =
1, containing a single configuration array. Now, for some reason, the
administrator decides to turn unicode.semantics = 0 and your configuration
file does not work anymore. That's because $arr[(unicode) 'key'] and
$arr[(binary) 'key'] are different. Hence, all the keys in the configuration
array have to be explicitly accessed with either (binary) or (unicode).

Now, make your own examples of how the switch will affect the life of PHP
programmers in the future and you will discover some disastrous scenarios.
>From now on, all the strings will have to be explicitly set/casted because
you never know if you'll get a binary string or a Unicode string when you
ask for a string. Literally, when PHP 6 becomes mainstream, all the
programmers will have to be re-educated to face these issues. As far as I'm
concerned, this is unprecedented in the history of the PHP project. PHP -
loosely typed, except for strings.

In the end, the switch benefits only the developers of very specialized
applications that run on big websites that can control their environments.

I've seen the 95%-who-don't-care figure circulating on this thread. If it
were really the case, why was the feature implemented with so much care in
PHP in the first place ? I, for one, do not agree with the 95% figure. Most,
if not all of the fastest growing markets in the world are non-english
speaking and native Unicode support makes PHP a prime choice for them. We're
not talking about 10 folks in Iowa there. We're talking about billions.

Overall, I think the damn switch is simply not a good idea. It removes a
good part of what made PHP a success: simplicity. Get rid of it once and for
all.

On 8/20/07, Andrei Zmievski <[EMAIL PROTECTED] > wrote:
>
> Nothing is happening, as far as I can tell. We are at an impasse,
> basically. Personally, I am fine with removing the damn switch and
> going forward with PHP 6 as Unicode-only. God knows it will rid us of
> at least one headache - having to discuss it anymore.
>
> -Andrei
> http://10fathoms.org/vu - daily photoblog
>
> On Aug 20, 2007, at 9:14 AM, David Coallier wrote:
> > Time to put gas on the fire.
> >
> > Is this flag going to be removed or what? What is happening here in
> > the background that we are not seeing ? :)
> >
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>


-- 
Nicolas Bérard-Nault ([EMAIL PROTECTED])
Étudiant D.E.C . Sciences, Lettres & Arts
Cégep de Sherbrooke

Homepage: http://nicobn.googlepages.com

Reply via email to