diff options
author | Moriyoshi Koizumi <moriyoshi@php.net> | 2008-07-16 02:30:49 +0000 |
---|---|---|
committer | Moriyoshi Koizumi <moriyoshi@php.net> | 2008-07-16 02:30:49 +0000 |
commit | 88318e0294f0b0b95eacbd4e24fe6c718a72390f (patch) | |
tree | e18e3824e6cb5cdcc8a0a9968c9d33b99f84ccab /ext/mbstring/php_mbregex.c | |
parent | 817f393a2d5238b780803fa27518bdc27f4a22f8 (diff) | |
download | php-git-88318e0294f0b0b95eacbd4e24fe6c718a72390f.tar.gz |
- MFH: Added a new configure option --with-onig=[DIR] that allows the extension
to link to the external oniguruma library.
- MFH: Prevent libmbfl files from being installed when --with-libmbfl is
specified.
Diffstat (limited to 'ext/mbstring/php_mbregex.c')
-rw-r--r-- | ext/mbstring/php_mbregex.c | 82 |
1 files changed, 81 insertions, 1 deletions
diff --git a/ext/mbstring/php_mbregex.c b/ext/mbstring/php_mbregex.c index 4456667217..5799802ed2 100644 --- a/ext/mbstring/php_mbregex.c +++ b/ext/mbstring/php_mbregex.c @@ -105,6 +105,28 @@ PHP_RSHUTDOWN_FUNCTION(mb_regex) } /* }}} */ +/* {{{ PHP_MINFO_FUNCTION(mb_regex) */ +PHP_MINFO_FUNCTION(mb_regex) +{ + char buf[32]; + php_info_print_table_start(); + php_info_print_table_row(2, "Multibyte (japanese) regex support", "enabled"); + snprintf(buf, sizeof(buf), "%d.%d.%d", + ONIGURUMA_VERSION_MAJOR, + ONIGURUMA_VERSION_MINOR, + ONIGURUMA_VERSION_TEENY); +#ifdef PHP_ONIG_BUNDLED +#ifdef USE_COMBINATION_EXPLOSION_CHECK + php_info_print_table_row(2, "Multibyte regex (oniguruma) backtrack check", "On"); +#else /* USE_COMBINATION_EXPLOSION_CHECK */ + php_info_print_table_row(2, "Multibyte regex (oniguruma) backtrack check", "Off"); +#endif /* USE_COMBINATION_EXPLOSION_CHECK */ +#endif /* PHP_BUNDLED_ONIG */ + php_info_print_table_row(2, "Multibyte regex (oniguruma) version", buf); + php_info_print_table_end(); +} +/* }}} */ + /* * encoding name resolver */ @@ -115,123 +137,181 @@ typedef struct _php_mb_regex_enc_name_map_t { OnigEncoding code; } php_mb_regex_enc_name_map_t; -php_mb_regex_enc_name_map_t enc_name_map[] ={ +php_mb_regex_enc_name_map_t enc_name_map[] = { +#ifdef ONIG_ENCODING_EUC_JP { "EUC-JP\0EUCJP\0X-EUC-JP\0UJIS\0EUCJP\0EUCJP-WIN\0", ONIG_ENCODING_EUC_JP }, +#endif +#ifdef ONIG_ENCODING_UTF8 { "UTF-8\0UTF8\0", ONIG_ENCODING_UTF8 }, +#endif +#ifdef ONIG_ENCODING_UTF16_BE { "UTF-16\0UTF-16BE\0", ONIG_ENCODING_UTF16_BE }, +#endif +#ifdef ONIG_ENCODING_UTF16_LE { "UTF-16LE\0", ONIG_ENCODING_UTF16_LE }, +#endif +#ifdef ONIG_ENCODING_UTF32_BE { "UCS-4\0UTF-32\0UTF-32BE\0", ONIG_ENCODING_UTF32_BE }, +#endif +#ifdef ONIG_ENCODING_UTF32_LE { "UCS-4LE\0UTF-32LE\0", ONIG_ENCODING_UTF32_LE }, +#endif +#ifdef ONIG_ENCODING_SJIS { "SJIS\0CP932\0MS932\0SHIFT_JIS\0SJIS-WIN\0WINDOWS-31J\0", ONIG_ENCODING_SJIS }, +#endif +#ifdef ONIG_ENCODING_BIG5 { "BIG5\0BIG-5\0BIGFIVE\0CN-BIG5\0BIG-FIVE\0", ONIG_ENCODING_BIG5 }, +#endif +#ifdef ONIG_ENCODING_EUC_CN { "EUC-CN\0EUCCN\0EUC_CN\0GB-2312\0GB2312\0", ONIG_ENCODING_EUC_CN }, +#endif +#ifdef ONIG_ENCODING_EUC_TW { "EUC-TW\0EUCTW\0EUC_TW\0", ONIG_ENCODING_EUC_TW }, +#endif +#ifdef ONIG_ENCODING_EUC_KR { "EUC-KR\0EUCKR\0EUC_KR\0", ONIG_ENCODING_EUC_KR }, +#endif +#if defined(ONIG_ENCODING_KOI8) && !PHP_ONIG_BAD_KOI8_ENTRY { "KOI8\0KOI-8\0", ONIG_ENCODING_KOI8 }, +#endif +#ifdef ONIG_ENCODING_KOI8_R { "KOI8R\0KOI8-R\0KOI-8R\0", ONIG_ENCODING_KOI8_R }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_1 { "ISO-8859-1\0ISO8859-1\0ISO_8859_1\0ISO8859_1\0", ONIG_ENCODING_ISO_8859_1 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_2 { "ISO-8859-2\0ISO8859-2\0ISO_8859_2\0ISO8859_2\0", ONIG_ENCODING_ISO_8859_2 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_3 { "ISO-8859-3\0ISO8859-3\0ISO_8859_3\0ISO8859_3\0", ONIG_ENCODING_ISO_8859_3 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_4 { "ISO-8859-4\0ISO8859-4\0ISO_8859_4\0ISO8859_4\0", ONIG_ENCODING_ISO_8859_4 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_5 { "ISO-8859-5\0ISO8859-5\0ISO_8859_5\0ISO8859_5\0", ONIG_ENCODING_ISO_8859_5 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_6 { "ISO-8859-6\0ISO8859-6\0ISO_8859_6\0ISO8859_6\0", ONIG_ENCODING_ISO_8859_6 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_7 { "ISO-8859-7\0ISO8859-7\0ISO_8859_7\0ISO8859_7\0", ONIG_ENCODING_ISO_8859_7 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_8 { "ISO-8859-8\0ISO8859-8\0ISO_8859_8\0ISO8859_8\0", ONIG_ENCODING_ISO_8859_8 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_9 { "ISO-8859-9\0ISO8859-9\0ISO_8859_9\0ISO8859_9\0", ONIG_ENCODING_ISO_8859_9 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_10 { "ISO-8859-10\0ISO8859-10\0ISO_8859_10\0ISO8859_10\0", ONIG_ENCODING_ISO_8859_10 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_11 { "ISO-8859-11\0ISO8859-11\0ISO_8859_11\0ISO8859_11\0", ONIG_ENCODING_ISO_8859_11 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_13 { "ISO-8859-13\0ISO8859-13\0ISO_8859_13\0ISO8859_13\0", ONIG_ENCODING_ISO_8859_13 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_14 { "ISO-8859-14\0ISO8859-14\0ISO_8859_14\0ISO8859_14\0", ONIG_ENCODING_ISO_8859_14 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_15 { "ISO-8859-15\0ISO8859-15\0ISO_8859_15\0ISO8859_15\0", ONIG_ENCODING_ISO_8859_15 }, +#endif +#ifdef ONIG_ENCODING_ISO_8859_16 { "ISO-8859-16\0ISO8859-16\0ISO_8859_16\0ISO8859_16\0", ONIG_ENCODING_ISO_8859_16 }, +#endif +#ifdef ONIG_ENCODING_ASCII { "ASCII\0US-ASCII\0US_ASCII\0ISO646\0", ONIG_ENCODING_ASCII }, +#endif { NULL, ONIG_ENCODING_UNDEF } }; /* }}} */ |