RE: [PHP-DEV] Re: strlen() under unicode.semantics

From: Date: Fri, 23 Jun 2006 06:30:50 +0000
Subject: RE: [PHP-DEV] Re: strlen() under unicode.semantics
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-24190@lists.php.net to get a copy of this message
I don't quite agree. I think there's a good chance people will want to save Unicode strings in a binary format for performance reasons. Save it the way it looks in memory, and put it back... Why convert to UTF-8 or any other encoding if it's just about storage? Andi > -----Original Message----- > From: Sara Golemon [mailto:pollita@php.net] > Sent: Thursday, June 22, 2006 9:15 PM > To: "Ron Korving" > Cc: internals@lists.php.net > Subject: Re: [PHP-DEV] Re: strlen() under unicode.semantics > > > Still, it's gotta be useful to be know how many bytes it occupies. > > Perhaps for Content-length headers or something. There are > plenty of > > low level concepts to think of where one might need this. > And even if > > you can't think of any reason now, you don't wanna get hit > in the face > > by it and have to implement such a function for PHP 6.0.1. > > > For this type of usage, I'd think it'd be relevant to know > how many bytes the string will occupy in a given output > encoding moreso that what it happens to occupy in the > underlying implementation. In the example you cited, string > contents will more typically be sent as utf8 rather than the > utf16 of php's internal encoding. > > $utf8str = unicode_encode($unistr, 'utf8'); > > header('Content-type: text/html; encoding="utf8"'); > header('Content-length: ' . strlen($utf8str)); echo $utf8str; > > I'm not saying it's impossible that a legitimate use will > come up to know the internal byte-usage of a unicode string, > there's certainly no harm in adding such a function (apart > from the tired shot-foot argument). I just doubt you (or > anyone) will come up such a case anytime soon. > > -Sara > > -- > PHP Internals - PHP Runtime Development Mailing List To > unsubscribe, visit: http://www.php.net/unsub.php >

« previous php.internals (#24190) next »