xref: /php-src/ext/mbstring/mbstring_arginfo.h (revision f8137084)
1 /* This is a generated file, edit the .stub.php file instead.
2  * Stub hash: 03c07f68bea7d7b96e6dc11f180f45663b859ed3 */
3 
4 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_language, 0, 0, MAY_BE_STRING|MAY_BE_BOOL)
5 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, language, IS_STRING, 1, "null")
6 ZEND_END_ARG_INFO()
7 
8 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_internal_encoding, 0, 0, MAY_BE_STRING|MAY_BE_BOOL)
9 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
10 ZEND_END_ARG_INFO()
11 
12 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_http_input, 0, 0, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_FALSE)
13 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_STRING, 1, "null")
14 ZEND_END_ARG_INFO()
15 
16 #define arginfo_mb_http_output arginfo_mb_internal_encoding
17 
18 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_detect_order, 0, 0, MAY_BE_ARRAY|MAY_BE_BOOL)
19 	ZEND_ARG_TYPE_MASK(0, encoding, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
20 ZEND_END_ARG_INFO()
21 
22 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_substitute_character, 0, 0, MAY_BE_STRING|MAY_BE_LONG|MAY_BE_BOOL)
23 	ZEND_ARG_TYPE_MASK(0, substitute_character, MAY_BE_STRING|MAY_BE_LONG|MAY_BE_NULL, "null")
24 ZEND_END_ARG_INFO()
25 
26 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_preferred_mime_name, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
27 	ZEND_ARG_TYPE_INFO(0, encoding, IS_STRING, 0)
28 ZEND_END_ARG_INFO()
29 
30 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_parse_str, 0, 2, _IS_BOOL, 0)
31 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
32 	ZEND_ARG_INFO(1, result)
33 ZEND_END_ARG_INFO()
34 
35 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_output_handler, 0, 2, IS_STRING, 0)
36 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
37 	ZEND_ARG_TYPE_INFO(0, status, IS_LONG, 0)
38 ZEND_END_ARG_INFO()
39 
40 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_str_split, 0, 1, IS_ARRAY, 0)
41 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
42 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "1")
43 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
44 ZEND_END_ARG_INFO()
45 
46 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_strlen, 0, 1, IS_LONG, 0)
47 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
48 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
49 ZEND_END_ARG_INFO()
50 
51 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_strpos, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
52 	ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
53 	ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
54 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
55 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
56 ZEND_END_ARG_INFO()
57 
58 #define arginfo_mb_strrpos arginfo_mb_strpos
59 
60 #define arginfo_mb_stripos arginfo_mb_strpos
61 
62 #define arginfo_mb_strripos arginfo_mb_strpos
63 
64 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_strstr, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
65 	ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
66 	ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
67 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, before_needle, _IS_BOOL, 0, "false")
68 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
69 ZEND_END_ARG_INFO()
70 
71 #define arginfo_mb_strrchr arginfo_mb_strstr
72 
73 #define arginfo_mb_stristr arginfo_mb_strstr
74 
75 #define arginfo_mb_strrichr arginfo_mb_strstr
76 
77 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_substr_count, 0, 2, IS_LONG, 0)
78 	ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
79 	ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
80 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
81 ZEND_END_ARG_INFO()
82 
83 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_substr, 0, 2, IS_STRING, 0)
84 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
85 	ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
86 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
87 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
88 ZEND_END_ARG_INFO()
89 
90 #define arginfo_mb_strcut arginfo_mb_substr
91 
92 #define arginfo_mb_strwidth arginfo_mb_strlen
93 
94 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_strimwidth, 0, 3, IS_STRING, 0)
95 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
96 	ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
97 	ZEND_ARG_TYPE_INFO(0, width, IS_LONG, 0)
98 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, trim_marker, IS_STRING, 0, "\"\"")
99 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
100 ZEND_END_ARG_INFO()
101 
102 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_convert_encoding, 0, 2, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_FALSE)
103 	ZEND_ARG_TYPE_MASK(0, string, MAY_BE_ARRAY|MAY_BE_STRING, NULL)
104 	ZEND_ARG_TYPE_INFO(0, to_encoding, IS_STRING, 0)
105 	ZEND_ARG_TYPE_MASK(0, from_encoding, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
106 ZEND_END_ARG_INFO()
107 
108 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_convert_case, 0, 2, IS_STRING, 0)
109 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
110 	ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
111 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
112 ZEND_END_ARG_INFO()
113 
114 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_strtoupper, 0, 1, IS_STRING, 0)
115 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
116 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
117 ZEND_END_ARG_INFO()
118 
119 #define arginfo_mb_strtolower arginfo_mb_strtoupper
120 
121 #define arginfo_mb_ucfirst arginfo_mb_strtoupper
122 
123 #define arginfo_mb_lcfirst arginfo_mb_strtoupper
124 
125 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_trim, 0, 1, IS_STRING, 0)
126 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
127 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, characters, IS_STRING, 1, "null")
128 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
129 ZEND_END_ARG_INFO()
130 
131 #define arginfo_mb_ltrim arginfo_mb_trim
132 
133 #define arginfo_mb_rtrim arginfo_mb_trim
134 
135 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_detect_encoding, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
136 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
137 	ZEND_ARG_TYPE_MASK(0, encodings, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
138 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, strict, _IS_BOOL, 0, "false")
139 ZEND_END_ARG_INFO()
140 
141 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_list_encodings, 0, 0, IS_ARRAY, 0)
142 ZEND_END_ARG_INFO()
143 
144 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_encoding_aliases, 0, 1, IS_ARRAY, 0)
145 	ZEND_ARG_TYPE_INFO(0, encoding, IS_STRING, 0)
146 ZEND_END_ARG_INFO()
147 
148 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_encode_mimeheader, 0, 1, IS_STRING, 0)
149 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
150 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, charset, IS_STRING, 1, "null")
151 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, transfer_encoding, IS_STRING, 1, "null")
152 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, newline, IS_STRING, 0, "\"\\r\\n\"")
153 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, indent, IS_LONG, 0, "0")
154 ZEND_END_ARG_INFO()
155 
156 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_decode_mimeheader, 0, 1, IS_STRING, 0)
157 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
158 ZEND_END_ARG_INFO()
159 
160 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_convert_kana, 0, 1, IS_STRING, 0)
161 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
162 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_STRING, 0, "\"KV\"")
163 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
164 ZEND_END_ARG_INFO()
165 
166 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_convert_variables, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
167 	ZEND_ARG_TYPE_INFO(0, to_encoding, IS_STRING, 0)
168 	ZEND_ARG_TYPE_MASK(0, from_encoding, MAY_BE_ARRAY|MAY_BE_STRING, NULL)
169 	ZEND_ARG_TYPE_INFO(1, var, IS_MIXED, 0)
170 	ZEND_ARG_VARIADIC_TYPE_INFO(1, vars, IS_MIXED, 0)
171 ZEND_END_ARG_INFO()
172 
173 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_encode_numericentity, 0, 2, IS_STRING, 0)
174 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
175 	ZEND_ARG_TYPE_INFO(0, map, IS_ARRAY, 0)
176 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
177 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, hex, _IS_BOOL, 0, "false")
178 ZEND_END_ARG_INFO()
179 
180 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_decode_numericentity, 0, 2, IS_STRING, 0)
181 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
182 	ZEND_ARG_TYPE_INFO(0, map, IS_ARRAY, 0)
183 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
184 ZEND_END_ARG_INFO()
185 
186 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_send_mail, 0, 3, _IS_BOOL, 0)
187 	ZEND_ARG_TYPE_INFO(0, to, IS_STRING, 0)
188 	ZEND_ARG_TYPE_INFO(0, subject, IS_STRING, 0)
189 	ZEND_ARG_TYPE_INFO(0, message, IS_STRING, 0)
190 	ZEND_ARG_TYPE_MASK(0, additional_headers, MAY_BE_ARRAY|MAY_BE_STRING, "[]")
191 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, additional_params, IS_STRING, 1, "null")
192 ZEND_END_ARG_INFO()
193 
194 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_get_info, 0, 0, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_LONG|MAY_BE_FALSE|MAY_BE_NULL)
195 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_STRING, 0, "\"all\"")
196 ZEND_END_ARG_INFO()
197 
198 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_check_encoding, 0, 0, _IS_BOOL, 0)
199 	ZEND_ARG_TYPE_MASK(0, value, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
200 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
201 ZEND_END_ARG_INFO()
202 
203 #define arginfo_mb_scrub arginfo_mb_strtoupper
204 
205 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_ord, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
206 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
207 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
208 ZEND_END_ARG_INFO()
209 
210 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_chr, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
211 	ZEND_ARG_TYPE_INFO(0, codepoint, IS_LONG, 0)
212 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
213 ZEND_END_ARG_INFO()
214 
215 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_str_pad, 0, 2, IS_STRING, 0)
216 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
217 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
218 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pad_string, IS_STRING, 0, "\" \"")
219 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pad_type, IS_LONG, 0, "STR_PAD_RIGHT")
220 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
221 ZEND_END_ARG_INFO()
222 
223 #if defined(HAVE_MBREGEX)
224 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_regex_encoding, 0, 0, MAY_BE_STRING|MAY_BE_BOOL)
225 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 1, "null")
226 ZEND_END_ARG_INFO()
227 #endif
228 
229 #if defined(HAVE_MBREGEX)
230 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg, 0, 2, _IS_BOOL, 0)
231 	ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
232 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
233 	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, matches, "null")
234 ZEND_END_ARG_INFO()
235 #endif
236 
237 #if defined(HAVE_MBREGEX)
238 #define arginfo_mb_eregi arginfo_mb_ereg
239 #endif
240 
241 #if defined(HAVE_MBREGEX)
242 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_ereg_replace, 0, 3, MAY_BE_STRING|MAY_BE_FALSE|MAY_BE_NULL)
243 	ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
244 	ZEND_ARG_TYPE_INFO(0, replacement, IS_STRING, 0)
245 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
246 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
247 ZEND_END_ARG_INFO()
248 #endif
249 
250 #if defined(HAVE_MBREGEX)
251 #define arginfo_mb_eregi_replace arginfo_mb_ereg_replace
252 #endif
253 
254 #if defined(HAVE_MBREGEX)
255 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_ereg_replace_callback, 0, 3, MAY_BE_STRING|MAY_BE_FALSE|MAY_BE_NULL)
256 	ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
257 	ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 0)
258 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
259 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
260 ZEND_END_ARG_INFO()
261 #endif
262 
263 #if defined(HAVE_MBREGEX)
264 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_split, 0, 2, MAY_BE_ARRAY|MAY_BE_FALSE)
265 	ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
266 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
267 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, limit, IS_LONG, 0, "-1")
268 ZEND_END_ARG_INFO()
269 #endif
270 
271 #if defined(HAVE_MBREGEX)
272 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg_match, 0, 2, _IS_BOOL, 0)
273 	ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
274 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
275 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
276 ZEND_END_ARG_INFO()
277 #endif
278 
279 #if defined(HAVE_MBREGEX)
280 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg_search, 0, 0, _IS_BOOL, 0)
281 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pattern, IS_STRING, 1, "null")
282 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
283 ZEND_END_ARG_INFO()
284 #endif
285 
286 #if defined(HAVE_MBREGEX)
287 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_ereg_search_pos, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
288 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pattern, IS_STRING, 1, "null")
289 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
290 ZEND_END_ARG_INFO()
291 #endif
292 
293 #if defined(HAVE_MBREGEX)
294 #define arginfo_mb_ereg_search_regs arginfo_mb_ereg_search_pos
295 #endif
296 
297 #if defined(HAVE_MBREGEX)
298 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg_search_init, 0, 1, _IS_BOOL, 0)
299 	ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
300 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pattern, IS_STRING, 1, "null")
301 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
302 ZEND_END_ARG_INFO()
303 #endif
304 
305 #if defined(HAVE_MBREGEX)
306 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mb_ereg_search_getregs, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
307 ZEND_END_ARG_INFO()
308 #endif
309 
310 #if defined(HAVE_MBREGEX)
311 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg_search_getpos, 0, 0, IS_LONG, 0)
312 ZEND_END_ARG_INFO()
313 #endif
314 
315 #if defined(HAVE_MBREGEX)
316 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_ereg_search_setpos, 0, 1, _IS_BOOL, 0)
317 	ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
318 ZEND_END_ARG_INFO()
319 #endif
320 
321 #if defined(HAVE_MBREGEX)
322 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mb_regex_set_options, 0, 0, IS_STRING, 0)
323 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_STRING, 1, "null")
324 ZEND_END_ARG_INFO()
325 #endif
326 
327 ZEND_FUNCTION(mb_language);
328 ZEND_FUNCTION(mb_internal_encoding);
329 ZEND_FUNCTION(mb_http_input);
330 ZEND_FUNCTION(mb_http_output);
331 ZEND_FUNCTION(mb_detect_order);
332 ZEND_FUNCTION(mb_substitute_character);
333 ZEND_FUNCTION(mb_preferred_mime_name);
334 ZEND_FUNCTION(mb_parse_str);
335 ZEND_FUNCTION(mb_output_handler);
336 ZEND_FUNCTION(mb_str_split);
337 ZEND_FUNCTION(mb_strlen);
338 ZEND_FUNCTION(mb_strpos);
339 ZEND_FUNCTION(mb_strrpos);
340 ZEND_FUNCTION(mb_stripos);
341 ZEND_FUNCTION(mb_strripos);
342 ZEND_FUNCTION(mb_strstr);
343 ZEND_FUNCTION(mb_strrchr);
344 ZEND_FUNCTION(mb_stristr);
345 ZEND_FUNCTION(mb_strrichr);
346 ZEND_FUNCTION(mb_substr_count);
347 ZEND_FUNCTION(mb_substr);
348 ZEND_FUNCTION(mb_strcut);
349 ZEND_FUNCTION(mb_strwidth);
350 ZEND_FUNCTION(mb_strimwidth);
351 ZEND_FUNCTION(mb_convert_encoding);
352 ZEND_FUNCTION(mb_convert_case);
353 ZEND_FUNCTION(mb_strtoupper);
354 ZEND_FUNCTION(mb_strtolower);
355 ZEND_FUNCTION(mb_ucfirst);
356 ZEND_FUNCTION(mb_lcfirst);
357 ZEND_FUNCTION(mb_trim);
358 ZEND_FUNCTION(mb_ltrim);
359 ZEND_FUNCTION(mb_rtrim);
360 ZEND_FUNCTION(mb_detect_encoding);
361 ZEND_FUNCTION(mb_list_encodings);
362 ZEND_FUNCTION(mb_encoding_aliases);
363 ZEND_FUNCTION(mb_encode_mimeheader);
364 ZEND_FUNCTION(mb_decode_mimeheader);
365 ZEND_FUNCTION(mb_convert_kana);
366 ZEND_FUNCTION(mb_convert_variables);
367 ZEND_FUNCTION(mb_encode_numericentity);
368 ZEND_FUNCTION(mb_decode_numericentity);
369 ZEND_FUNCTION(mb_send_mail);
370 ZEND_FUNCTION(mb_get_info);
371 ZEND_FUNCTION(mb_check_encoding);
372 ZEND_FUNCTION(mb_scrub);
373 ZEND_FUNCTION(mb_ord);
374 ZEND_FUNCTION(mb_chr);
375 ZEND_FUNCTION(mb_str_pad);
376 #if defined(HAVE_MBREGEX)
377 ZEND_FUNCTION(mb_regex_encoding);
378 #endif
379 #if defined(HAVE_MBREGEX)
380 ZEND_FUNCTION(mb_ereg);
381 #endif
382 #if defined(HAVE_MBREGEX)
383 ZEND_FUNCTION(mb_eregi);
384 #endif
385 #if defined(HAVE_MBREGEX)
386 ZEND_FUNCTION(mb_ereg_replace);
387 #endif
388 #if defined(HAVE_MBREGEX)
389 ZEND_FUNCTION(mb_eregi_replace);
390 #endif
391 #if defined(HAVE_MBREGEX)
392 ZEND_FUNCTION(mb_ereg_replace_callback);
393 #endif
394 #if defined(HAVE_MBREGEX)
395 ZEND_FUNCTION(mb_split);
396 #endif
397 #if defined(HAVE_MBREGEX)
398 ZEND_FUNCTION(mb_ereg_match);
399 #endif
400 #if defined(HAVE_MBREGEX)
401 ZEND_FUNCTION(mb_ereg_search);
402 #endif
403 #if defined(HAVE_MBREGEX)
404 ZEND_FUNCTION(mb_ereg_search_pos);
405 #endif
406 #if defined(HAVE_MBREGEX)
407 ZEND_FUNCTION(mb_ereg_search_regs);
408 #endif
409 #if defined(HAVE_MBREGEX)
410 ZEND_FUNCTION(mb_ereg_search_init);
411 #endif
412 #if defined(HAVE_MBREGEX)
413 ZEND_FUNCTION(mb_ereg_search_getregs);
414 #endif
415 #if defined(HAVE_MBREGEX)
416 ZEND_FUNCTION(mb_ereg_search_getpos);
417 #endif
418 #if defined(HAVE_MBREGEX)
419 ZEND_FUNCTION(mb_ereg_search_setpos);
420 #endif
421 #if defined(HAVE_MBREGEX)
422 ZEND_FUNCTION(mb_regex_set_options);
423 #endif
424 
425 static const zend_function_entry ext_functions[] = {
426 	ZEND_FE(mb_language, arginfo_mb_language)
427 	ZEND_FE(mb_internal_encoding, arginfo_mb_internal_encoding)
428 	ZEND_FE(mb_http_input, arginfo_mb_http_input)
429 	ZEND_FE(mb_http_output, arginfo_mb_http_output)
430 	ZEND_FE(mb_detect_order, arginfo_mb_detect_order)
431 	ZEND_FE(mb_substitute_character, arginfo_mb_substitute_character)
432 	ZEND_FE(mb_preferred_mime_name, arginfo_mb_preferred_mime_name)
433 	ZEND_FE(mb_parse_str, arginfo_mb_parse_str)
434 	ZEND_FE(mb_output_handler, arginfo_mb_output_handler)
435 	ZEND_FE(mb_str_split, arginfo_mb_str_split)
436 	ZEND_FE(mb_strlen, arginfo_mb_strlen)
437 	ZEND_FE(mb_strpos, arginfo_mb_strpos)
438 	ZEND_FE(mb_strrpos, arginfo_mb_strrpos)
439 	ZEND_FE(mb_stripos, arginfo_mb_stripos)
440 	ZEND_FE(mb_strripos, arginfo_mb_strripos)
441 	ZEND_FE(mb_strstr, arginfo_mb_strstr)
442 	ZEND_FE(mb_strrchr, arginfo_mb_strrchr)
443 	ZEND_FE(mb_stristr, arginfo_mb_stristr)
444 	ZEND_FE(mb_strrichr, arginfo_mb_strrichr)
445 	ZEND_FE(mb_substr_count, arginfo_mb_substr_count)
446 	ZEND_FE(mb_substr, arginfo_mb_substr)
447 	ZEND_FE(mb_strcut, arginfo_mb_strcut)
448 	ZEND_FE(mb_strwidth, arginfo_mb_strwidth)
449 	ZEND_FE(mb_strimwidth, arginfo_mb_strimwidth)
450 	ZEND_FE(mb_convert_encoding, arginfo_mb_convert_encoding)
451 	ZEND_FE(mb_convert_case, arginfo_mb_convert_case)
452 	ZEND_FE(mb_strtoupper, arginfo_mb_strtoupper)
453 	ZEND_FE(mb_strtolower, arginfo_mb_strtolower)
454 	ZEND_FE(mb_ucfirst, arginfo_mb_ucfirst)
455 	ZEND_FE(mb_lcfirst, arginfo_mb_lcfirst)
456 	ZEND_FE(mb_trim, arginfo_mb_trim)
457 	ZEND_FE(mb_ltrim, arginfo_mb_ltrim)
458 	ZEND_FE(mb_rtrim, arginfo_mb_rtrim)
459 	ZEND_FE(mb_detect_encoding, arginfo_mb_detect_encoding)
460 	ZEND_FE(mb_list_encodings, arginfo_mb_list_encodings)
461 	ZEND_FE(mb_encoding_aliases, arginfo_mb_encoding_aliases)
462 	ZEND_FE(mb_encode_mimeheader, arginfo_mb_encode_mimeheader)
463 	ZEND_FE(mb_decode_mimeheader, arginfo_mb_decode_mimeheader)
464 	ZEND_FE(mb_convert_kana, arginfo_mb_convert_kana)
465 	ZEND_FE(mb_convert_variables, arginfo_mb_convert_variables)
466 	ZEND_FE(mb_encode_numericentity, arginfo_mb_encode_numericentity)
467 	ZEND_FE(mb_decode_numericentity, arginfo_mb_decode_numericentity)
468 	ZEND_FE(mb_send_mail, arginfo_mb_send_mail)
469 	ZEND_FE(mb_get_info, arginfo_mb_get_info)
470 	ZEND_FE(mb_check_encoding, arginfo_mb_check_encoding)
471 	ZEND_FE(mb_scrub, arginfo_mb_scrub)
472 	ZEND_FE(mb_ord, arginfo_mb_ord)
473 	ZEND_FE(mb_chr, arginfo_mb_chr)
474 	ZEND_FE(mb_str_pad, arginfo_mb_str_pad)
475 #if defined(HAVE_MBREGEX)
476 	ZEND_FE(mb_regex_encoding, arginfo_mb_regex_encoding)
477 #endif
478 #if defined(HAVE_MBREGEX)
479 	ZEND_FE(mb_ereg, arginfo_mb_ereg)
480 #endif
481 #if defined(HAVE_MBREGEX)
482 	ZEND_FE(mb_eregi, arginfo_mb_eregi)
483 #endif
484 #if defined(HAVE_MBREGEX)
485 	ZEND_FE(mb_ereg_replace, arginfo_mb_ereg_replace)
486 #endif
487 #if defined(HAVE_MBREGEX)
488 	ZEND_FE(mb_eregi_replace, arginfo_mb_eregi_replace)
489 #endif
490 #if defined(HAVE_MBREGEX)
491 	ZEND_FE(mb_ereg_replace_callback, arginfo_mb_ereg_replace_callback)
492 #endif
493 #if defined(HAVE_MBREGEX)
494 	ZEND_FE(mb_split, arginfo_mb_split)
495 #endif
496 #if defined(HAVE_MBREGEX)
497 	ZEND_FE(mb_ereg_match, arginfo_mb_ereg_match)
498 #endif
499 #if defined(HAVE_MBREGEX)
500 	ZEND_FE(mb_ereg_search, arginfo_mb_ereg_search)
501 #endif
502 #if defined(HAVE_MBREGEX)
503 	ZEND_FE(mb_ereg_search_pos, arginfo_mb_ereg_search_pos)
504 #endif
505 #if defined(HAVE_MBREGEX)
506 	ZEND_FE(mb_ereg_search_regs, arginfo_mb_ereg_search_regs)
507 #endif
508 #if defined(HAVE_MBREGEX)
509 	ZEND_FE(mb_ereg_search_init, arginfo_mb_ereg_search_init)
510 #endif
511 #if defined(HAVE_MBREGEX)
512 	ZEND_FE(mb_ereg_search_getregs, arginfo_mb_ereg_search_getregs)
513 #endif
514 #if defined(HAVE_MBREGEX)
515 	ZEND_FE(mb_ereg_search_getpos, arginfo_mb_ereg_search_getpos)
516 #endif
517 #if defined(HAVE_MBREGEX)
518 	ZEND_FE(mb_ereg_search_setpos, arginfo_mb_ereg_search_setpos)
519 #endif
520 #if defined(HAVE_MBREGEX)
521 	ZEND_FE(mb_regex_set_options, arginfo_mb_regex_set_options)
522 #endif
523 	ZEND_FE_END
524 };
525 
register_mbstring_symbols(int module_number)526 static void register_mbstring_symbols(int module_number)
527 {
528 #if defined(HAVE_MBREGEX)
529 	REGISTER_STRING_CONSTANT("MB_ONIGURUMA_VERSION", php_mb_oniguruma_version, CONST_PERSISTENT);
530 #endif
531 	REGISTER_LONG_CONSTANT("MB_CASE_UPPER", PHP_UNICODE_CASE_UPPER, CONST_PERSISTENT);
532 	REGISTER_LONG_CONSTANT("MB_CASE_LOWER", PHP_UNICODE_CASE_LOWER, CONST_PERSISTENT);
533 	REGISTER_LONG_CONSTANT("MB_CASE_TITLE", PHP_UNICODE_CASE_TITLE, CONST_PERSISTENT);
534 	REGISTER_LONG_CONSTANT("MB_CASE_FOLD", PHP_UNICODE_CASE_FOLD, CONST_PERSISTENT);
535 	REGISTER_LONG_CONSTANT("MB_CASE_UPPER_SIMPLE", PHP_UNICODE_CASE_UPPER_SIMPLE, CONST_PERSISTENT);
536 	REGISTER_LONG_CONSTANT("MB_CASE_LOWER_SIMPLE", PHP_UNICODE_CASE_LOWER_SIMPLE, CONST_PERSISTENT);
537 	REGISTER_LONG_CONSTANT("MB_CASE_TITLE_SIMPLE", PHP_UNICODE_CASE_TITLE_SIMPLE, CONST_PERSISTENT);
538 	REGISTER_LONG_CONSTANT("MB_CASE_FOLD_SIMPLE", PHP_UNICODE_CASE_FOLD_SIMPLE, CONST_PERSISTENT);
539 }
540