[RFC] mbstring-ng

php.internals

Yasuo Ohgaki

12 years ago
Hi all, I would like to discuss RFC created at 2009 by Moriyoshi. Alternative mbstring implementation using ICU https://wiki.php.net/rfc/altmbstring The reason behind of this RFC is library used by mbstring. mbstring uses libmbfl for multibyte string handling and Oniguruma for multibyte regular expression. libmbfl is not used widely AFAIK. Oniguruma is used widely by Ruby, etc. Issue for these libraries are license. They are LGPLed. As long as PHP/mbstring or embed SAPI is used as shared library, users are not affected by LGPL. However, if users compile their extension statically into PHP or use embed SAPI statically, they are affected by LGPL. I would like to introduce mbstring-ng as a replacement of mbstring for PHP 6 and move mbstring to PECL. It may be good to introduce work in progress mbstring-ng to PHP 5.6 as EXPERIMENTAL module for further development and testing. There would be compatibility issues between mbstring-ng and mbstring due to the difference of used library. Even if there would be compatibility issues, adoption of mbstring-ng is better for future development. IMHO. Any comments? Regards,
-- Yasuo Ohgaki yohgaki@ohgaki.net

Andrew Faulds

12 years ago
On 20/01/14 03:10, Yasuo Ohgaki wrote:
> Any comments?
Are there any locales or encodings which mbstring currently supports that ICU doesn't? It'd be best not to break existing applications...
-- Andrea Faulds http://ajf.me/

Yasuo Ohgaki

12 years ago
Hi Andrea, On Tue, Jan 21, 2014 at 1:28 AM, Andrea Faulds <ajf@ajf.me> wrote:
> On 20/01/14 03:10, Yasuo Ohgaki wrote: > >> Any comments? >> > > Are there any locales or encodings which mbstring currently supports that > ICU doesn't? It'd be best not to break existing applications... >
AFIAK, mbstring supports some Japanese encodings that require special handling. It also supports special encodings like HTML entities, base64, etc. These could be issue. Otherwise, I suppose there aren't. I have to check them carefully, though. ICU http://demo.icu-project.org/icu-bin/convexp mbstring http://jp1.php.net/manual/en/mbstring.supported-encodings.php Regards,
-- Yasuo Ohgaki yohgaki@ohgaki.net