summaryrefslogtreecommitdiff
path: root/ext/mbstring/mbstring.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mbstring/mbstring.c')
-rw-r--r--ext/mbstring/mbstring.c45
1 files changed, 14 insertions, 31 deletions
diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c
index e90c6967b8..581970f379 100644
--- a/ext/mbstring/mbstring.c
+++ b/ext/mbstring/mbstring.c
@@ -75,10 +75,6 @@
#endif /* ZEND_MULTIBYTE */
#if HAVE_MBSTRING
-
-#if HAVE_MBREGEX
-#include "mbregex.h"
-#endif
/* }}} */
/* {{{ prototypes */
@@ -171,21 +167,6 @@ static const struct mb_overload_def mb_ovld[] = {
};
/* }}} */
-#if HAVE_MBREGEX
-struct def_mbctype_tbl {
- enum mbfl_no_encoding mbfl_encoding;
- int regex_encoding;
-};
-
-const struct def_mbctype_tbl mbctype_tbl[] = {
- {mbfl_no_encoding_ascii,MBCTYPE_ASCII},
- {mbfl_no_encoding_euc_jp,MBCTYPE_EUC},
- {mbfl_no_encoding_sjis,MBCTYPE_SJIS},
- {mbfl_no_encoding_utf8,MBCTYPE_UTF8},
- {mbfl_no_encoding_pass,-1}
-};
-#endif
-
/* {{{ function_entry mbstring_functions[] */
function_entry mbstring_functions[] = {
PHP_FE(mb_convert_case, NULL)
@@ -524,9 +505,6 @@ static PHP_INI_MH(OnUpdate_mbstring_http_output)
static PHP_INI_MH(OnUpdate_mbstring_internal_encoding)
{
enum mbfl_no_encoding no_encoding;
-#if HAVE_MBREGEX
- const struct def_mbctype_tbl *p = NULL;
-#endif
if (new_value == NULL) {
return SUCCESS;
}
@@ -536,14 +514,13 @@ static PHP_INI_MH(OnUpdate_mbstring_internal_encoding)
MBSTRG(internal_encoding) = no_encoding;
MBSTRG(current_internal_encoding) = no_encoding;
#if HAVE_MBREGEX
- p=&(mbctype_tbl[0]);
- while (p->regex_encoding >= 0){
- if (p->mbfl_encoding == MBSTRG(internal_encoding)){
- MBSTRG(default_mbctype) = p->regex_encoding;
- MBSTRG(current_mbctype) = p->regex_encoding;
- break;
- }
- p++;
+ {
+ php_mb_reg_char_encoding mbctype;
+ mbctype = php_mb_regex_name2mbctype(new_value);
+ if (mbctype == REGCODE_UNDEF) {
+ mbctype = REGCODE_EUCJP;
+ }
+ MBSTRG(current_mbctype) = MBSTRG(default_mbctype) = mbctype;
}
#endif
#ifdef ZEND_MULTIBYTE
@@ -900,8 +877,11 @@ PHP_RSHUTDOWN_FUNCTION(mbstring)
/* {{{ PHP_MINFO_FUNCTION(mbstring) */
PHP_MINFO_FUNCTION(mbstring)
{
+ char buf[32];
+
php_info_print_table_start();
php_info_print_table_row(2, "Multibyte Support", "enabled");
+ php_info_print_table_row(2, "Multibyte string engine", "libmbfl");
#if defined(HAVE_MBSTR_JA)
php_info_print_table_row(2, "Japanese support", "enabled");
#endif
@@ -921,7 +901,10 @@ PHP_MINFO_FUNCTION(mbstring)
php_info_print_table_row(2, "HTTP input encoding translation", "enabled");
}
#if defined(HAVE_MBREGEX)
- php_info_print_table_row(2, "Multibyte (japanese) regex support", "enabled");
+ php_info_print_table_row(2, "Multibyte (japanese) regex support", "enabled");
+ sprintf(buf, "%d.%d.%d",
+ ONIGURUMA_VERSION_MAJOR,ONIGURUMA_VERSION_MINOR,ONIGURUMA_VERSION_TEENY);
+ php_info_print_table_row(2, "Multibyte regex (oniguruma) version", buf);
#endif
php_info_print_table_end();