1: <?php
2:
3: /*
4: * This file is part of the Symfony package.
5: *
6: * (c) Fabien Potencier <fabien@symfony.com>
7: *
8: * For the full copyright and license information, please view the LICENSE
9: * file that was distributed with this source code.
10: */
11:
12: use Symfony\Polyfill\Mbstring as p;
13:
14: if (!function_exists('mb_convert_encoding')) {
15: function mb_convert_encoding($string, $to_encoding, $from_encoding = null) { return p\Mbstring::mb_convert_encoding($string, $to_encoding, $from_encoding); }
16: }
17: if (!function_exists('mb_decode_mimeheader')) {
18: function mb_decode_mimeheader($string) { return p\Mbstring::mb_decode_mimeheader($string); }
19: }
20: if (!function_exists('mb_encode_mimeheader')) {
21: function mb_encode_mimeheader($string, $charset = null, $transfer_encoding = null, $newline = null, $indent = null) { return p\Mbstring::mb_encode_mimeheader($string, $charset, $transfer_encoding, $newline, $indent); }
22: }
23: if (!function_exists('mb_decode_numericentity')) {
24: function mb_decode_numericentity($string, $map, $encoding = null) { return p\Mbstring::mb_decode_numericentity($string, $map, $encoding); }
25: }
26: if (!function_exists('mb_encode_numericentity')) {
27: function mb_encode_numericentity($string, $map, $encoding = null, $hex = false) { return p\Mbstring::mb_encode_numericentity($string, $map, $encoding, $hex); }
28: }
29: if (!function_exists('mb_convert_case')) {
30: function mb_convert_case($string, $mode, $encoding = null) { return p\Mbstring::mb_convert_case($string, $mode, $encoding); }
31: }
32: if (!function_exists('mb_internal_encoding')) {
33: function mb_internal_encoding($encoding = null) { return p\Mbstring::mb_internal_encoding($encoding); }
34: }
35: if (!function_exists('mb_language')) {
36: function mb_language($language = null) { return p\Mbstring::mb_language($language); }
37: }
38: if (!function_exists('mb_list_encodings')) {
39: function mb_list_encodings() { return p\Mbstring::mb_list_encodings(); }
40: }
41: if (!function_exists('mb_encoding_aliases')) {
42: function mb_encoding_aliases($encoding) { return p\Mbstring::mb_encoding_aliases($encoding); }
43: }
44: if (!function_exists('mb_check_encoding')) {
45: function mb_check_encoding($value = null, $encoding = null) { return p\Mbstring::mb_check_encoding($value, $encoding); }
46: }
47: if (!function_exists('mb_detect_encoding')) {
48: function mb_detect_encoding($string, $encodings = null, $strict = false) { return p\Mbstring::mb_detect_encoding($string, $encodings, $strict); }
49: }
50: if (!function_exists('mb_detect_order')) {
51: function mb_detect_order($encoding = null) { return p\Mbstring::mb_detect_order($encoding); }
52: }
53: if (!function_exists('mb_parse_str')) {
54: function mb_parse_str($string, &$result = array()) { parse_str($string, $result); }
55: }
56: if (!function_exists('mb_strlen')) {
57: function mb_strlen($string, $encoding = null) { return p\Mbstring::mb_strlen($string, $encoding); }
58: }
59: if (!function_exists('mb_strpos')) {
60: function mb_strpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strpos($haystack, $needle, $offset, $encoding); }
61: }
62: if (!function_exists('mb_strtolower')) {
63: function mb_strtolower($string, $encoding = null) { return p\Mbstring::mb_strtolower($string, $encoding); }
64: }
65: if (!function_exists('mb_strtoupper')) {
66: function mb_strtoupper($string, $encoding = null) { return p\Mbstring::mb_strtoupper($string, $encoding); }
67: }
68: if (!function_exists('mb_substitute_character')) {
69: function mb_substitute_character($substitute_character = null) { return p\Mbstring::mb_substitute_character($substitute_character); }
70: }
71: if (!function_exists('mb_substr')) {
72: function mb_substr($string, $start, $length = 2147483647, $encoding = null) { return p\Mbstring::mb_substr($string, $start, $length, $encoding); }
73: }
74: if (!function_exists('mb_stripos')) {
75: function mb_stripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_stripos($haystack, $needle, $offset, $encoding); }
76: }
77: if (!function_exists('mb_stristr')) {
78: function mb_stristr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_stristr($haystack, $needle, $before_needle, $encoding); }
79: }
80: if (!function_exists('mb_strrchr')) {
81: function mb_strrchr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrchr($haystack, $needle, $before_needle, $encoding); }
82: }
83: if (!function_exists('mb_strrichr')) {
84: function mb_strrichr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strrichr($haystack, $needle, $before_needle, $encoding); }
85: }
86: if (!function_exists('mb_strripos')) {
87: function mb_strripos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strripos($haystack, $needle, $offset, $encoding); }
88: }
89: if (!function_exists('mb_strrpos')) {
90: function mb_strrpos($haystack, $needle, $offset = 0, $encoding = null) { return p\Mbstring::mb_strrpos($haystack, $needle, $offset, $encoding); }
91: }
92: if (!function_exists('mb_strstr')) {
93: function mb_strstr($haystack, $needle, $before_needle = false, $encoding = null) { return p\Mbstring::mb_strstr($haystack, $needle, $before_needle, $encoding); }
94: }
95: if (!function_exists('mb_get_info')) {
96: function mb_get_info($type = 'all') { return p\Mbstring::mb_get_info($type); }
97: }
98: if (!function_exists('mb_http_output')) {
99: function mb_http_output($encoding = null) { return p\Mbstring::mb_http_output($encoding); }
100: }
101: if (!function_exists('mb_strwidth')) {
102: function mb_strwidth($string, $encoding = null) { return p\Mbstring::mb_strwidth($string, $encoding); }
103: }
104: if (!function_exists('mb_substr_count')) {
105: function mb_substr_count($haystack, $needle, $encoding = null) { return p\Mbstring::mb_substr_count($haystack, $needle, $encoding); }
106: }
107: if (!function_exists('mb_output_handler')) {
108: function mb_output_handler($string, $status) { return p\Mbstring::mb_output_handler($string, $status); }
109: }
110: if (!function_exists('mb_http_input')) {
111: function mb_http_input($type = '') { return p\Mbstring::mb_http_input($type); }
112: }
113:
114: if (PHP_VERSION_ID >= 80000) {
115: require_once __DIR__.'/Resources/mb_convert_variables.php8';
116: } elseif (!function_exists('mb_convert_variables')) {
117: function mb_convert_variables($toEncoding, $fromEncoding, &$a = null, &$b = null, &$c = null, &$d = null, &$e = null, &$f = null) { return p\Mbstring::mb_convert_variables($toEncoding, $fromEncoding, $a, $b, $c, $d, $e, $f); }
118: }
119:
120: if (!function_exists('mb_ord')) {
121: function mb_ord($string, $encoding = null) { return p\Mbstring::mb_ord($string, $encoding); }
122: }
123: if (!function_exists('mb_chr')) {
124: function mb_chr($codepoint, $encoding = null) { return p\Mbstring::mb_chr($codepoint, $encoding); }
125: }
126: if (!function_exists('mb_scrub')) {
127: function mb_scrub($string, $encoding = null) { $encoding = null === $encoding ? mb_internal_encoding() : $encoding; return mb_convert_encoding($string, $encoding, $encoding); }
128: }
129: if (!function_exists('mb_str_split')) {
130: function mb_str_split($string, $length = 1, $encoding = null) { return p\Mbstring::mb_str_split($string, $length, $encoding); }
131: }
132:
133: if (extension_loaded('mbstring')) {
134: return;
135: }
136:
137: if (!defined('MB_CASE_UPPER')) {
138: define('MB_CASE_UPPER', 0);
139: }
140: if (!defined('MB_CASE_LOWER')) {
141: define('MB_CASE_LOWER', 1);
142: }
143: if (!defined('MB_CASE_TITLE')) {
144: define('MB_CASE_TITLE', 2);
145: }
146: