1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 #ifdef HAVE_CONFIG_H
24 #include "config.h"
25 #endif
26
27 #include <signal.h>
28
29 #include "php.h"
30 #include "php_ini.h"
31 #include "ext/standard/info.h"
32 #include "php_mysqli_structs.h"
33 #include "mysqli_fe.h"
34 #include "mysqli_priv.h"
35
36 #ifdef MYSQLI_USE_FULL_TYPED_ARGINFO_0
37 #define MYSQLI_ZEND_ARG_OBJ_INFO_LINK() ZEND_ARG_OBJ_INFO(0, link, mysqli, 0)
38 #define MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() ZEND_ARG_OBJ_INFO(0, result, mysqli_result, 0)
39 #define MYSQLI_ZEND_ARG_OBJ_INFO_STMT() ZEND_ARG_OBJ_INFO(0, stmt, mysqli_stmt, 0)
40 #else
41 #define MYSQLI_ZEND_ARG_OBJ_INFO_LINK() ZEND_ARG_INFO(0, link)
42 #define MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() ZEND_ARG_INFO(0, result)
43 #define MYSQLI_ZEND_ARG_OBJ_INFO_STMT() ZEND_ARG_INFO(0, stmt)
44 #endif
45
46 ZEND_BEGIN_ARG_INFO(arginfo_mysqli_stmt_bind_result, 0)
47 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
48 ZEND_ARG_VARIADIC_INFO(1, vars)
49 ZEND_END_ARG_INFO()
50
51 ZEND_BEGIN_ARG_INFO(arginfo_mysqli_stmt_bind_param, 0)
52 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
53 ZEND_ARG_INFO(0, types)
54 ZEND_ARG_VARIADIC_INFO(1, vars)
55 ZEND_END_ARG_INFO()
56
57 ZEND_BEGIN_ARG_INFO(arginfo_class_mysqli_stmt_bind_result, 0)
58 ZEND_ARG_VARIADIC_INFO(1, vars)
59 ZEND_END_ARG_INFO()
60
61 ZEND_BEGIN_ARG_INFO(arginfo_class_mysqli_stmt_bind_param, 0)
62 ZEND_ARG_INFO(0, types)
63 ZEND_ARG_VARIADIC_INFO(1, vars)
64 ZEND_END_ARG_INFO()
65
66 ZEND_BEGIN_ARG_INFO(all_args_force_by_ref, 0)
67 ZEND_ARG_VARIADIC_INFO(1, vars)
68 ZEND_END_ARG_INFO()
69
70 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_poll, 0, 0, 4)
71 ZEND_ARG_ARRAY_INFO(1, read, 1)
72 ZEND_ARG_ARRAY_INFO(1, write, 1)
73 ZEND_ARG_ARRAY_INFO(1, error, 1)
74 ZEND_ARG_INFO(0, sec)
75 ZEND_ARG_INFO(0, usec)
76 ZEND_END_ARG_INFO()
77
78 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_no_params, 0, 0, 0)
79 ZEND_END_ARG_INFO()
80
81 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_link, 0, 0, 1)
82 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
83 ZEND_END_ARG_INFO()
84
85 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_autocommit, 0, 0, 2)
86 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
87 ZEND_ARG_INFO(0, mode)
88 ZEND_END_ARG_INFO()
89
90 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_autocommit, 0, 0, 1)
91 ZEND_ARG_INFO(0, mode)
92 ZEND_END_ARG_INFO()
93
94 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_begin_transaction, 0, 0, 1)
95 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
96 ZEND_ARG_INFO(0, flags)
97 ZEND_ARG_INFO(0, name)
98 ZEND_END_ARG_INFO()
99
100 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_begin_transaction, 0, 0, 0)
101 ZEND_ARG_INFO(0, flags)
102 ZEND_ARG_INFO(0, name)
103 ZEND_END_ARG_INFO()
104
105 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_savepoint, 0, 0, 2)
106 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
107 ZEND_ARG_INFO(0, name)
108 ZEND_END_ARG_INFO()
109
110 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_savepoint, 0, 0, 1)
111 ZEND_ARG_INFO(0, name)
112 ZEND_END_ARG_INFO()
113
114 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_release_savepoint, 0, 0, 2)
115 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
116 ZEND_ARG_INFO(0, name)
117 ZEND_END_ARG_INFO()
118
119 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_release_savepoint, 0, 0, 1)
120 ZEND_ARG_INFO(0, name)
121 ZEND_END_ARG_INFO()
122
123 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_commit, 0, 0, 1)
124 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
125 ZEND_ARG_INFO(0, flags)
126 ZEND_ARG_INFO(0, name)
127 ZEND_END_ARG_INFO()
128
129 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_commit, 0, 0, 0)
130 ZEND_ARG_INFO(0, flags)
131 ZEND_ARG_INFO(0, name)
132 ZEND_END_ARG_INFO()
133
134 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_rollback, 0, 0, 1)
135 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
136 ZEND_ARG_INFO(0, flags)
137 ZEND_ARG_INFO(0, name)
138 ZEND_END_ARG_INFO()
139
140 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_rollback, 0, 0, 0)
141 ZEND_ARG_INFO(0, flags)
142 ZEND_ARG_INFO(0, name)
143 ZEND_END_ARG_INFO()
144
145
146 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_store_result, 0, 0, 1)
147 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
148 ZEND_ARG_INFO(0, flags)
149 ZEND_END_ARG_INFO()
150
151 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_store_result, 0, 0, 0)
152 ZEND_ARG_INFO(0, flags)
153 ZEND_END_ARG_INFO()
154
155
156 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_change_user, 0, 0, 4)
157 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
158 ZEND_ARG_INFO(0, user)
159 ZEND_ARG_INFO(0, password)
160 ZEND_ARG_INFO(0, database)
161 ZEND_END_ARG_INFO()
162
163 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_change_user, 0, 0, 3)
164 ZEND_ARG_INFO(0, user)
165 ZEND_ARG_INFO(0, password)
166 ZEND_ARG_INFO(0, database)
167 ZEND_END_ARG_INFO()
168
169
170 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_connect, 0, 0, 0)
171 ZEND_ARG_INFO(0, host)
172 ZEND_ARG_INFO(0, user)
173 ZEND_ARG_INFO(0, password)
174 ZEND_ARG_INFO(0, database)
175 ZEND_ARG_INFO(0, port)
176 ZEND_ARG_INFO(0, socket)
177 ZEND_END_ARG_INFO()
178
179 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_real_connect, 0, 0, 1)
180 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
181 ZEND_ARG_INFO(0, host)
182 ZEND_ARG_INFO(0, user)
183 ZEND_ARG_INFO(0, password)
184 ZEND_ARG_INFO(0, database)
185 ZEND_ARG_INFO(0, port)
186 ZEND_ARG_INFO(0, socket)
187 ZEND_ARG_INFO(0, flags)
188 ZEND_END_ARG_INFO()
189
190 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_connect, 0, 0, 0)
191 ZEND_ARG_INFO(0, host)
192 ZEND_ARG_INFO(0, user)
193 ZEND_ARG_INFO(0, password)
194 ZEND_ARG_INFO(0, database)
195 ZEND_ARG_INFO(0, port)
196 ZEND_ARG_INFO(0, socket)
197 ZEND_ARG_INFO(0, flags)
198 ZEND_END_ARG_INFO()
199
200 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_result, 0, 0, 1)
201 MYSQLI_ZEND_ARG_OBJ_INFO_RESULT()
202 ZEND_END_ARG_INFO()
203
204 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_statement, 0, 0, 1)
205 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
206 ZEND_END_ARG_INFO()
207
208 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_data_seek, 0, 0, 2)
209 MYSQLI_ZEND_ARG_OBJ_INFO_RESULT()
210 ZEND_ARG_INFO(0, offset)
211 ZEND_END_ARG_INFO()
212
213 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_data_seek, 0, 0, 2)
214 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
215 ZEND_ARG_INFO(0, offset)
216 ZEND_END_ARG_INFO()
217
218 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_data_seek, 0, 0, 1)
219 ZEND_ARG_INFO(0, offset)
220 ZEND_END_ARG_INFO()
221
222 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_debug, 0, 0, 1)
223 ZEND_ARG_INFO(0, debug_options)
224 ZEND_END_ARG_INFO()
225
226 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_result_and_fieldnr, 0, 0, 2)
227 MYSQLI_ZEND_ARG_OBJ_INFO_RESULT()
228 ZEND_ARG_INFO(0, field_nr)
229 ZEND_END_ARG_INFO()
230
231 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_and_fieldnr, 0, 0, 1)
232 ZEND_ARG_INFO(0, field_nr)
233 ZEND_END_ARG_INFO()
234
235 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_fetch_array, 0, 0, 1)
236 MYSQLI_ZEND_ARG_OBJ_INFO_RESULT()
237 ZEND_ARG_INFO(0, result_type)
238 ZEND_END_ARG_INFO()
239
240 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_fetch_array, 0, 0, 0)
241 ZEND_ARG_INFO(0, result_type)
242 ZEND_END_ARG_INFO()
243
244
245 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_fetch_object, 0, 0, 1)
246 #if PHP_VERSION_ID > 50399
247 MYSQLI_ZEND_ARG_OBJ_INFO_RESULT()
248 ZEND_ARG_INFO(0, class_name)
249 ZEND_ARG_ARRAY_INFO(0, params, 0)
250 #endif
251 ZEND_END_ARG_INFO()
252
253 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_fetch_object, 0, 0, 0)
254 #if PHP_VERSION_ID > 50399
255 ZEND_ARG_INFO(0, class_name)
256 ZEND_ARG_ARRAY_INFO(0, params, 0)
257 #endif
258 ZEND_END_ARG_INFO()
259
260 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_kill, 0, 0, 2)
261 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
262 ZEND_ARG_INFO(0, connection_id)
263 ZEND_END_ARG_INFO()
264
265 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_kill, 0, 0, 1)
266 ZEND_ARG_INFO(0, connection_id)
267 ZEND_END_ARG_INFO()
268
269 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_query, 0, 0, 2)
270 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
271 ZEND_ARG_INFO(0, query)
272 ZEND_END_ARG_INFO()
273
274 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_prepare, 0, 0, 2)
275 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
276 ZEND_ARG_INFO(0, query)
277 ZEND_END_ARG_INFO()
278
279 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_prepare, 0, 0, 2)
280 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
281 ZEND_ARG_INFO(0, query)
282 ZEND_END_ARG_INFO()
283
284 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_query, 0, 0, 1)
285 ZEND_ARG_INFO(0, query)
286 ZEND_END_ARG_INFO()
287
288 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_options, 0, 0, 3)
289 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
290 ZEND_ARG_INFO(0, option)
291 ZEND_ARG_INFO(0, value)
292 ZEND_END_ARG_INFO()
293
294 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_options, 0, 0, 2)
295 ZEND_ARG_INFO(0, option)
296 ZEND_ARG_INFO(0, value)
297 ZEND_END_ARG_INFO()
298
299 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_report, 0, 0, 1)
300 ZEND_ARG_INFO(0, flags)
301 ZEND_END_ARG_INFO()
302
303 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_real_escape_string, 0, 0, 2)
304 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
305 ZEND_ARG_INFO(0, string_to_escape)
306 ZEND_END_ARG_INFO()
307
308 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_escape_string, 0, 0, 1)
309 ZEND_ARG_INFO(0, string_to_escape)
310 ZEND_END_ARG_INFO()
311
312 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_select_db, 0, 0, 2)
313 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
314 ZEND_ARG_INFO(0, database)
315 ZEND_END_ARG_INFO()
316
317 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_select_db, 0, 0, 1)
318 ZEND_ARG_INFO(0, database)
319 ZEND_END_ARG_INFO()
320
321 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_set_charset, 0, 0, 2)
322 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
323 ZEND_ARG_INFO(0, charset)
324 ZEND_END_ARG_INFO()
325
326 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_set_charset, 0, 0, 1)
327 ZEND_ARG_INFO(0, charset)
328 ZEND_END_ARG_INFO()
329
330 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_attr_get, 0, 0, 2)
331 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
332 ZEND_ARG_INFO(0, attribute)
333 ZEND_END_ARG_INFO()
334
335 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_get, 0, 0, 1)
336 ZEND_ARG_INFO(0, attribute)
337 ZEND_END_ARG_INFO()
338
339 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_attr_set, 0, 0, 3)
340 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
341 ZEND_ARG_INFO(0, attribute)
342 ZEND_ARG_INFO(0, value)
343 ZEND_END_ARG_INFO()
344
345 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_set, 0, 0, 2)
346 ZEND_ARG_INFO(0, attribute)
347 ZEND_ARG_INFO(0, value)
348 ZEND_END_ARG_INFO()
349
350 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_send_long_data, 0, 0, 3)
351 MYSQLI_ZEND_ARG_OBJ_INFO_STMT()
352 ZEND_ARG_INFO(0, param_nr)
353 ZEND_ARG_INFO(0, data)
354 ZEND_END_ARG_INFO()
355
356 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_send_long_data, 0, 0, 2)
357 ZEND_ARG_INFO(0, param_nr)
358 ZEND_ARG_INFO(0, data)
359 ZEND_END_ARG_INFO()
360
361 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_ssl_set, 0, 0, 6)
362 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
363 ZEND_ARG_INFO(0, key)
364 ZEND_ARG_INFO(0, cert)
365 ZEND_ARG_INFO(0, certificate_authority)
366 ZEND_ARG_INFO(0, certificate_authority_path)
367 ZEND_ARG_INFO(0, cipher)
368 ZEND_END_ARG_INFO()
369
370 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_ssl_set, 0, 0, 5)
371 ZEND_ARG_INFO(0, key)
372 ZEND_ARG_INFO(0, cert)
373 ZEND_ARG_INFO(0, certificate_authority)
374 ZEND_ARG_INFO(0, certificate_authority_path)
375 ZEND_ARG_INFO(0, cipher)
376 ZEND_END_ARG_INFO()
377
378 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_refresh, 0, 0, 2)
379 MYSQLI_ZEND_ARG_OBJ_INFO_LINK()
380 ZEND_ARG_INFO(0, options)
381 ZEND_END_ARG_INFO()
382
383 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_refresh, 0, 0, 1)
384 ZEND_ARG_INFO(0, options)
385 ZEND_END_ARG_INFO()
386
387 ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_no_options, 0, 0, 0)
388 ZEND_END_ARG_INFO()
389
390
391
392
393
394
395 const zend_function_entry mysqli_functions[] = {
396 PHP_FE(mysqli_affected_rows, arginfo_mysqli_only_link)
397 PHP_FE(mysqli_autocommit, arginfo_mysqli_autocommit)
398 PHP_FE(mysqli_begin_transaction, arginfo_mysqli_begin_transaction)
399 PHP_FE(mysqli_change_user, arginfo_mysqli_change_user)
400 PHP_FE(mysqli_character_set_name, arginfo_mysqli_only_link)
401 PHP_FE(mysqli_close, arginfo_mysqli_only_link)
402 PHP_FE(mysqli_commit, arginfo_mysqli_commit)
403 PHP_FE(mysqli_connect, arginfo_mysqli_connect)
404 PHP_FE(mysqli_connect_errno, arginfo_mysqli_no_params)
405 PHP_FE(mysqli_connect_error, arginfo_mysqli_no_params)
406 PHP_FE(mysqli_data_seek, arginfo_mysqli_data_seek)
407 PHP_FE(mysqli_dump_debug_info, arginfo_mysqli_only_link)
408 PHP_FE(mysqli_debug, arginfo_mysqli_debug)
409 #if defined(HAVE_EMBEDDED_MYSQLI)
410 PHP_FE(mysqli_embedded_server_end, NULL)
411 PHP_FE(mysqli_embedded_server_start, NULL)
412 #endif
413 PHP_FE(mysqli_errno, arginfo_mysqli_only_link)
414 PHP_FE(mysqli_error, arginfo_mysqli_only_link)
415 PHP_FE(mysqli_error_list, arginfo_mysqli_only_link)
416 PHP_FE(mysqli_stmt_execute, arginfo_mysqli_only_statement)
417 PHP_FALIAS(mysqli_execute, mysqli_stmt_execute, arginfo_mysqli_only_statement)
418 PHP_FE(mysqli_fetch_field, arginfo_mysqli_only_result)
419 PHP_FE(mysqli_fetch_fields, arginfo_mysqli_only_result)
420 PHP_FE(mysqli_fetch_field_direct, arginfo_mysqli_result_and_fieldnr)
421 PHP_FE(mysqli_fetch_lengths, arginfo_mysqli_only_result)
422 #ifdef MYSQLI_USE_MYSQLND
423 PHP_FE(mysqli_fetch_all, arginfo_mysqli_only_result)
424 #endif
425 PHP_FE(mysqli_fetch_array, arginfo_mysqli_fetch_array)
426 PHP_FE(mysqli_fetch_assoc, arginfo_mysqli_only_result)
427 PHP_FE(mysqli_fetch_object, arginfo_mysqli_fetch_object)
428 PHP_FE(mysqli_fetch_row, arginfo_mysqli_only_result)
429 PHP_FE(mysqli_field_count, arginfo_mysqli_only_link)
430 PHP_FE(mysqli_field_seek, arginfo_mysqli_result_and_fieldnr)
431 PHP_FE(mysqli_field_tell, arginfo_mysqli_only_result)
432 PHP_FE(mysqli_free_result, arginfo_mysqli_only_result)
433 #if defined(MYSQLI_USE_MYSQLND)
434 PHP_FE(mysqli_get_connection_stats, arginfo_mysqli_only_link)
435 PHP_FE(mysqli_get_client_stats, arginfo_mysqli_no_params)
436 #endif
437 #ifdef HAVE_MYSQLI_GET_CHARSET
438 PHP_FE(mysqli_get_charset, arginfo_mysqli_only_link)
439 #endif
440 PHP_FE(mysqli_get_client_info, arginfo_mysqli_only_link)
441 PHP_FE(mysqli_get_client_version, arginfo_mysqli_only_link)
442 PHP_FE(mysqli_get_links_stats, arginfo_mysqli_no_options)
443 PHP_FE(mysqli_get_host_info, arginfo_mysqli_only_link)
444 PHP_FE(mysqli_get_proto_info, arginfo_mysqli_only_link)
445 PHP_FE(mysqli_get_server_info, arginfo_mysqli_only_link)
446 PHP_FE(mysqli_get_server_version, arginfo_mysqli_only_link)
447 PHP_FE(mysqli_get_warnings, arginfo_mysqli_only_link)
448 PHP_FE(mysqli_init, arginfo_mysqli_no_params)
449 PHP_FE(mysqli_info, arginfo_mysqli_only_link)
450 PHP_FE(mysqli_insert_id, arginfo_mysqli_only_link)
451 PHP_FE(mysqli_kill, arginfo_mysqli_kill)
452 PHP_FE(mysqli_more_results, arginfo_mysqli_only_link)
453 PHP_FE(mysqli_multi_query, arginfo_mysqli_query)
454 PHP_FE(mysqli_next_result, arginfo_mysqli_only_link)
455 PHP_FE(mysqli_num_fields, arginfo_mysqli_only_result)
456 PHP_FE(mysqli_num_rows, arginfo_mysqli_only_result)
457 PHP_FE(mysqli_options, arginfo_mysqli_options)
458 PHP_FE(mysqli_ping, arginfo_mysqli_only_link)
459 #if defined(MYSQLI_USE_MYSQLND)
460 PHP_FE(mysqli_poll, arginfo_mysqli_poll)
461 #endif
462 PHP_FE(mysqli_prepare, arginfo_mysqli_prepare)
463 PHP_FE(mysqli_report, arginfo_mysqli_report)
464 PHP_FE(mysqli_query, arginfo_mysqli_query)
465 PHP_FE(mysqli_real_connect, arginfo_mysqli_real_connect)
466 PHP_FE(mysqli_real_escape_string, arginfo_mysqli_real_escape_string)
467 PHP_FE(mysqli_real_query, arginfo_mysqli_query)
468 #if defined(MYSQLI_USE_MYSQLND)
469 PHP_FE(mysqli_reap_async_query, arginfo_mysqli_only_link)
470 #endif
471 PHP_FE(mysqli_release_savepoint, arginfo_mysqli_release_savepoint)
472 PHP_FE(mysqli_rollback, arginfo_mysqli_rollback)
473 PHP_FE(mysqli_savepoint, arginfo_mysqli_savepoint)
474 PHP_FE(mysqli_select_db, arginfo_mysqli_select_db)
475 #ifdef HAVE_MYSQLI_SET_CHARSET
476 PHP_FE(mysqli_set_charset, arginfo_mysqli_set_charset)
477 #endif
478 PHP_FE(mysqli_stmt_affected_rows, arginfo_mysqli_only_statement)
479 PHP_FE(mysqli_stmt_attr_get, arginfo_mysqli_stmt_attr_get)
480 PHP_FE(mysqli_stmt_attr_set, arginfo_mysqli_stmt_attr_set)
481 PHP_FE(mysqli_stmt_bind_param, arginfo_mysqli_stmt_bind_param)
482 PHP_FE(mysqli_stmt_bind_result, arginfo_mysqli_stmt_bind_result)
483 PHP_FE(mysqli_stmt_close, arginfo_mysqli_only_statement)
484 PHP_FE(mysqli_stmt_data_seek, arginfo_mysqli_stmt_data_seek)
485 PHP_FE(mysqli_stmt_errno, arginfo_mysqli_only_statement)
486 PHP_FE(mysqli_stmt_error, arginfo_mysqli_only_statement)
487 PHP_FE(mysqli_stmt_error_list, arginfo_mysqli_only_statement)
488 PHP_FE(mysqli_stmt_fetch, arginfo_mysqli_only_statement)
489 PHP_FE(mysqli_stmt_field_count, arginfo_mysqli_only_statement)
490 PHP_FE(mysqli_stmt_free_result, arginfo_mysqli_only_statement)
491 #if defined(MYSQLI_USE_MYSQLND)
492 PHP_FE(mysqli_stmt_get_result, arginfo_mysqli_only_statement)
493 #endif
494 PHP_FE(mysqli_stmt_get_warnings, arginfo_mysqli_only_statement)
495 PHP_FE(mysqli_stmt_init, arginfo_mysqli_only_link)
496 PHP_FE(mysqli_stmt_insert_id, arginfo_mysqli_only_statement)
497 #if defined(MYSQLI_USE_MYSQLND)
498 PHP_FE(mysqli_stmt_more_results, arginfo_mysqli_only_statement)
499 PHP_FE(mysqli_stmt_next_result, arginfo_mysqli_only_statement)
500 #endif
501 PHP_FE(mysqli_stmt_num_rows, arginfo_mysqli_only_statement)
502 PHP_FE(mysqli_stmt_param_count, arginfo_mysqli_only_statement)
503 PHP_FE(mysqli_stmt_prepare, arginfo_mysqli_stmt_prepare)
504 PHP_FE(mysqli_stmt_reset, arginfo_mysqli_only_statement)
505 PHP_FE(mysqli_stmt_result_metadata, arginfo_mysqli_only_statement)
506 PHP_FE(mysqli_stmt_send_long_data, arginfo_mysqli_stmt_send_long_data)
507 PHP_FE(mysqli_stmt_store_result, arginfo_mysqli_only_statement)
508 PHP_FE(mysqli_stmt_sqlstate, arginfo_mysqli_only_statement)
509 PHP_FE(mysqli_sqlstate, arginfo_mysqli_only_link)
510 PHP_FE(mysqli_ssl_set, arginfo_mysqli_ssl_set)
511 PHP_FE(mysqli_stat, arginfo_mysqli_only_link)
512 PHP_FE(mysqli_store_result, arginfo_mysqli_store_result)
513 PHP_FE(mysqli_thread_id, arginfo_mysqli_only_link)
514 PHP_FE(mysqli_thread_safe, arginfo_mysqli_no_params)
515 PHP_FE(mysqli_use_result, arginfo_mysqli_only_link)
516 PHP_FE(mysqli_warning_count, arginfo_mysqli_only_link)
517
518 PHP_FE(mysqli_refresh, arginfo_mysqli_refresh)
519
520
521 PHP_FALIAS(mysqli_escape_string, mysqli_real_escape_string, arginfo_mysqli_query)
522 PHP_FALIAS(mysqli_set_opt, mysqli_options, NULL)
523
524 PHP_FE_END
525 };
526
527
528
529
530
531
532 const zend_function_entry mysqli_link_methods[] = {
533 PHP_FALIAS(autocommit, mysqli_autocommit, arginfo_class_mysqli_autocommit)
534 PHP_FALIAS(begin_transaction, mysqli_begin_transaction, arginfo_class_mysqli_begin_transaction)
535 PHP_FALIAS(change_user,mysqli_change_user, arginfo_class_mysqli_change_user)
536 PHP_FALIAS(character_set_name, mysqli_character_set_name, arginfo_mysqli_no_params)
537 PHP_FALIAS(close, mysqli_close, arginfo_mysqli_no_params)
538 PHP_FALIAS(commit, mysqli_commit, arginfo_class_mysqli_commit)
539 PHP_FALIAS(connect, mysqli_connect, arginfo_mysqli_connect)
540 PHP_FALIAS(dump_debug_info, mysqli_dump_debug_info, arginfo_mysqli_no_params)
541 PHP_FALIAS(debug, mysqli_debug, arginfo_mysqli_debug)
542 #ifdef HAVE_MYSQLI_GET_CHARSET
543 PHP_FALIAS(get_charset, mysqli_get_charset, arginfo_mysqli_no_params)
544 #endif
545 PHP_FALIAS(get_client_info, mysqli_get_client_info, arginfo_mysqli_no_params)
546 #if defined(MYSQLI_USE_MYSQLND)
547 PHP_FALIAS(get_connection_stats, mysqli_get_connection_stats, arginfo_mysqli_no_params)
548 #endif
549 PHP_FALIAS(get_server_info, mysqli_get_server_info, arginfo_mysqli_no_params)
550 PHP_FALIAS(get_warnings, mysqli_get_warnings, arginfo_mysqli_no_params)
551 PHP_FALIAS(init,mysqli_init_method, arginfo_mysqli_no_params)
552 PHP_FALIAS(kill,mysqli_kill, arginfo_class_mysqli_kill)
553 PHP_FALIAS(multi_query, mysqli_multi_query, arginfo_class_mysqli_query)
554 PHP_FALIAS(__construct, mysqli_link_construct, arginfo_mysqli_connect)
555 PHP_FALIAS(more_results, mysqli_more_results, arginfo_mysqli_no_params)
556 PHP_FALIAS(next_result, mysqli_next_result, arginfo_mysqli_no_params)
557 PHP_FALIAS(options, mysqli_options, arginfo_class_mysqli_options)
558 PHP_FALIAS(ping, mysqli_ping, arginfo_mysqli_no_params)
559 #if defined(MYSQLI_USE_MYSQLND)
560 ZEND_FENTRY(poll, ZEND_FN(mysqli_poll), arginfo_mysqli_poll, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC)
561 #endif
562 PHP_FALIAS(prepare, mysqli_prepare, arginfo_class_mysqli_query)
563 PHP_FALIAS(query, mysqli_query, arginfo_class_mysqli_query)
564 PHP_FALIAS(real_connect, mysqli_real_connect, arginfo_class_mysqli_real_connect)
565 PHP_FALIAS(real_escape_string, mysqli_real_escape_string, arginfo_class_mysqli_real_escape_string)
566 #if defined(MYSQLI_USE_MYSQLND)
567 PHP_FALIAS(reap_async_query, mysqli_reap_async_query, arginfo_mysqli_no_params)
568 #endif
569 PHP_FALIAS(escape_string, mysqli_real_escape_string, arginfo_class_mysqli_real_escape_string)
570 PHP_FALIAS(real_query, mysqli_real_query, arginfo_class_mysqli_query)
571 PHP_FALIAS(release_savepoint, mysqli_release_savepoint, arginfo_class_mysqli_release_savepoint)
572 PHP_FALIAS(rollback, mysqli_rollback, arginfo_class_mysqli_rollback)
573 PHP_FALIAS(savepoint, mysqli_savepoint, arginfo_class_mysqli_savepoint)
574 PHP_FALIAS(select_db,mysqli_select_db, arginfo_class_mysqli_select_db)
575 #ifdef HAVE_MYSQLI_SET_CHARSET
576 PHP_FALIAS(set_charset, mysqli_set_charset, arginfo_class_mysqli_set_charset)
577 #endif
578 PHP_FALIAS(set_opt, mysqli_options, arginfo_class_mysqli_options)
579 PHP_FALIAS(ssl_set, mysqli_ssl_set, arginfo_class_mysqli_ssl_set)
580 PHP_FALIAS(stat, mysqli_stat, arginfo_mysqli_no_params)
581 PHP_FALIAS(stmt_init, mysqli_stmt_init, arginfo_mysqli_no_params)
582 PHP_FALIAS(store_result, mysqli_store_result, arginfo_class_store_result)
583 PHP_FALIAS(thread_safe, mysqli_thread_safe, arginfo_mysqli_no_params)
584 PHP_FALIAS(use_result, mysqli_use_result, arginfo_mysqli_no_params)
585 PHP_FALIAS(refresh,mysqli_refresh, arginfo_class_mysqli_refresh)
586 {NULL, NULL, NULL}
587 };
588
589
590
591
592
593
594 const zend_function_entry mysqli_result_methods[] = {
595 PHP_FALIAS(__construct, mysqli_result_construct, NULL)
596 PHP_FALIAS(close, mysqli_free_result, arginfo_mysqli_no_params)
597 PHP_FALIAS(free, mysqli_free_result, arginfo_mysqli_no_params)
598 PHP_FALIAS(data_seek, mysqli_data_seek, arginfo_class_mysqli_data_seek)
599 PHP_FALIAS(fetch_field, mysqli_fetch_field, arginfo_mysqli_no_params)
600 PHP_FALIAS(fetch_fields, mysqli_fetch_fields, arginfo_mysqli_no_params)
601 PHP_FALIAS(fetch_field_direct, mysqli_fetch_field_direct, arginfo_class_mysqli_result_and_fieldnr)
602 #if defined(MYSQLI_USE_MYSQLND)
603 PHP_FALIAS(fetch_all, mysqli_fetch_all, arginfo_mysqli_no_params)
604 #endif
605 PHP_FALIAS(fetch_array, mysqli_fetch_array, arginfo_class_mysqli_fetch_array)
606 PHP_FALIAS(fetch_assoc, mysqli_fetch_assoc, arginfo_mysqli_no_params)
607 PHP_FALIAS(fetch_object,mysqli_fetch_object, arginfo_class_mysqli_fetch_object)
608 PHP_FALIAS(fetch_row, mysqli_fetch_row, arginfo_mysqli_no_params)
609 PHP_FALIAS(field_seek, mysqli_field_seek, arginfo_class_mysqli_result_and_fieldnr)
610 PHP_FALIAS(free_result, mysqli_free_result, arginfo_mysqli_no_params)
611 {NULL, NULL, NULL}
612 };
613
614
615
616
617
618
619 const zend_function_entry mysqli_stmt_methods[] = {
620 PHP_FALIAS(__construct, mysqli_stmt_construct, NULL)
621 PHP_FALIAS(attr_get, mysqli_stmt_attr_get, arginfo_class_mysqli_stmt_attr_get)
622 PHP_FALIAS(attr_set,mysqli_stmt_attr_set, arginfo_class_mysqli_stmt_attr_set)
623 PHP_FALIAS(bind_param,mysqli_stmt_bind_param, arginfo_class_mysqli_stmt_bind_param)
624 PHP_FALIAS(bind_result,mysqli_stmt_bind_result, arginfo_class_mysqli_stmt_bind_result)
625 PHP_FALIAS(close, mysqli_stmt_close, arginfo_mysqli_no_params)
626 PHP_FALIAS(data_seek, mysqli_stmt_data_seek, arginfo_class_mysqli_data_seek)
627 PHP_FALIAS(execute, mysqli_stmt_execute, arginfo_mysqli_no_params)
628 PHP_FALIAS(fetch, mysqli_stmt_fetch, arginfo_mysqli_no_params)
629 PHP_FALIAS(get_warnings, mysqli_stmt_get_warnings, arginfo_mysqli_no_params)
630 PHP_FALIAS(result_metadata, mysqli_stmt_result_metadata, arginfo_mysqli_no_params)
631 #if defined(MYSQLI_USE_MYSQLND)
632 PHP_FALIAS(more_results, mysqli_stmt_more_results, arginfo_mysqli_no_params)
633 PHP_FALIAS(next_result, mysqli_stmt_next_result, arginfo_mysqli_no_params)
634 #endif
635 PHP_FALIAS(num_rows, mysqli_stmt_num_rows, arginfo_mysqli_no_params)
636 PHP_FALIAS(send_long_data, mysqli_stmt_send_long_data, arginfo_class_mysqli_stmt_send_long_data)
637 PHP_FALIAS(free_result, mysqli_stmt_free_result, arginfo_mysqli_no_params)
638 PHP_FALIAS(reset, mysqli_stmt_reset, arginfo_mysqli_no_params)
639 PHP_FALIAS(prepare, mysqli_stmt_prepare, arginfo_class_mysqli_query)
640 PHP_FALIAS(store_result, mysqli_stmt_store_result, arginfo_mysqli_no_params)
641 #if defined(MYSQLI_USE_MYSQLND)
642 PHP_FALIAS(get_result, mysqli_stmt_get_result, arginfo_mysqli_no_params)
643 #endif
644 {NULL, NULL, NULL}
645 };
646
647
648
649
650
651
652
653
654
655