On Tue, 3 Dec 2002, Moriyoshi Koizumi wrote:
>--snip
>> If you compile mbstring as static module, you can workaround this
>> error. It's not very good idea to enable it anyway..
>
>I'm wondering why you referred to enabling mbstring as no good idea
>in this report. I believe the problem has been properly avoided, or am I
>missing something?
Maybe I just assumed something, but I think this person really
doesn't even need it. :) That's why I also noted about enabling
only extensions that he actually needs.
The biggest concern about mbstring for me is that it changes some core
functions behaviour. I haven't followed the development of mbstring
closely so I might be wrong here..just that one major bug caused by
that duplication of code (for post vars parsing) gives me creeps. :)
As long as it's separate from core PHP, I will never suggest anybody
to use it.
>> For the mbstring authors: You should decide whether or not to allow
>> external usage of these functions (ie. in other extensions) or disable
>> the building of this extension as shared altogether..
>
>What decision? We actually externalise some functions just for that
>purpose. Perhaps did you mean integration of mbstring into core part?
Yes. But mbstring is not the only extension having the same problem
when compiled as shared. At least iconv, openssl, pcre and gd also
have some external parts used outside them. e.g. All the extensions
and core parts using those externalized functions in mbstring must
now put these around the parts using those:
#ifndef COMPILE_DL_MBSTRING
#endif
This is done in some places, but not everywhere, like shown by
the bug report.
The same problem is also with PCRE and GD extensions.
One solution would be to make at least PCRE and MBstring always
static, ie. disallow building them as shared. Or move them
under ext/standard..
With openssl and iconv it's a bit different, the same libraries
are required by other extensions. This problem could be solved by
linking the core PHP always with those, even when compiling openssl
or iconv as shared extensions.
>BTW we are now working on a new mbstring API specification so that other
>extension authors can use the functions with more convenience and in no
>more doubt about their usage. If we should treat it in a special way,
>please let us know.
Yeah, keep it simple. :)
--Jani
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php