diff options
author | Tom Van Looy <tom@ctors.net> | 2019-11-15 15:39:56 +0100 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-02-25 11:06:46 +0100 |
commit | fabe6a310ca25349301becf3d61dfdde249893a7 (patch) | |
tree | b55192cb94f36e90c211bfd13cf03b8e17a359f5 /ext/mysqli | |
parent | aa79a22d32f31dbc5343f8191e925aa07447c3ec (diff) | |
download | php-git-fabe6a310ca25349301becf3d61dfdde249893a7.tar.gz |
Add ext/mysqli stubs
Closes GH-4913.
Diffstat (limited to 'ext/mysqli')
-rw-r--r-- | ext/mysqli/mysqli.stub.php | 527 | ||||
-rw-r--r-- | ext/mysqli/mysqli_api.c | 2 | ||||
-rw-r--r-- | ext/mysqli/mysqli_arginfo.h | 661 | ||||
-rw-r--r-- | ext/mysqli/mysqli_fe.c | 631 | ||||
-rw-r--r-- | ext/mysqli/mysqli_warning.c | 6 |
5 files changed, 1327 insertions, 500 deletions
diff --git a/ext/mysqli/mysqli.stub.php b/ext/mysqli/mysqli.stub.php new file mode 100644 index 0000000000..6df17ec47f --- /dev/null +++ b/ext/mysqli/mysqli.stub.php @@ -0,0 +1,527 @@ +<?php + +class mysqli_driver +{ +} + +class mysqli +{ + public function __construct( + ?string $host = null, + ?string $user = null, + ?string $password = null, + ?string $database = null, + ?int $port = null, + ?string $socket = null + ); + + /** @return bool */ + public function autocommit(bool $mode); + + /** @return bool */ + public function begin_transaction(int $flags = -1, string $name = UNKNOWN); + + /** @return bool */ + public function change_user(string $user, string $password, ?string $database); + + /** @return string|null */ + public function character_set_name(); + + /** @return bool */ + public function close(); + + /** @return bool */ + public function commit(int $flags = -1, string $name = UNKNOWN); + + /** @return mysqli|null|false */ + public function connect( + ?string $host = null, + ?string $user = null, + ?string $password = null, + ?string $database = null, + ?int $port = null, + ?string $socket = null + ); + + /** @return bool */ + public function dump_debug_info(); + + /** @return bool */ + public function debug(string $debug_options); + + /** @return object|null */ + public function get_charset(); + + /** @return string|null */ + public function get_client_info(); + + /** @return array */ + public function get_connection_stats(); + + /** @return string|null */ + public function get_server_info(); + + /** @return mysqli_warning|false */ + public function get_warnings(); + + /** @return mysqli|false */ + public function init(); + + /** @return bool */ + public function kill(int $connection_id); + + /** @return bool */ + public function multi_query(string $query); + + /** @return bool */ + public function more_results(); + + /** @return bool */ + public function next_result(); + + /** @return bool */ + public function ping(); + + /** @return int|false */ + public static function poll(?array &$read, ?array &$write, array &$error, int $sec, int $usec = 0); + + /** @return mysqli_stmt|false */ + public function prepare(string $query); + + /** @return mysqli_result|bool */ + public function query(string $query, int $resultmode = MYSQLI_STORE_RESULT); + + /** @return mysqli|bool */ + public function real_connect( + ?string $host = null, + ?string $user = null, + ?string $password = null, + ?string $database = null, + ?int $port = null, + ?string $socket = null, + int $flags = 0 + ); + + /** @return string */ + public function real_escape_string(string $string_to_escape); + + /** @return mysqli_result|bool */ + public function reap_async_query(); + + /** @return string */ + public function escape_string(string $string_to_escape); + + /** @return bool */ + public function real_query(string $query); + + /** @return bool */ + public function release_savepoint(string $name); + + /** @return bool */ + public function rollback(int $flags = 0, string $name = ''); + + /** @return bool */ + public function savepoint(string $name); + + /** @return bool */ + public function select_db(string $database); + + /** @return bool */ + public function set_charset(string $charset); + + /** + * @param mixed $value + * + * @return bool + */ + public function options(int $option, $value); + + /** + * @param mixed $value + * + * @return bool + */ + public function set_opt(int $option, $value); + + /** @return bool */ + public function ssl_set( + string $key, + string $cert, + string $certificate_authority, + string $certificate_authority_path, + string $cipher + ); + + /** @return string|false */ + public function stat(); + + /** @return mysqli_stmt|false */ + public function stmt_init(); + + /** @return mysqli_result|false */ + public function store_result(int $flags = 0); + + /** @return bool */ + public function thread_safe(); + + /** @return mysqli_result|false */ + public function use_result(); + + /** @return bool */ + public function refresh(int $options); +} + +class mysqli_warning +{ + public function __construct(object $mysqli_link); + + /** @return bool */ + public function next(); +} + +class mysqli_result +{ + public function __construct(object $mysqli_link, int $resmode = MYSQLI_STORE_RESULT); + + /** @return void */ + public function close(); + + /** @return void */ + public function free(); + + /** @return bool */ + public function data_seek(int $offset); + + /** @return object|false */ + public function fetch_field(); + + /** @return array */ + public function fetch_fields(); + + /** @return object|false */ + public function fetch_field_direct(int $field_nr); + + /** @return array|false */ + public function fetch_all(int $result_type = MYSQLI_NUM); + + /** @return array|null|false */ + public function fetch_array(int $result_type = MYSQLI_BOTH); + + /** @return array|null */ + public function fetch_assoc(); + + /** @return object|null */ + public function fetch_object(string $class_name = 'stdClass', array $params = []); + + /** @return array|null */ + public function fetch_row(); + + /** @return bool */ + public function field_seek(int $field_nr); + + /** @return void */ + public function free_result(); +} + +class mysqli_stmt +{ + public function __construct(mysqli $mysqli_link, string $statement = UNKNOWN); + + /** @return int|false */ + public function attr_get(int $attr); + + /** @return bool */ + public function attr_set(int $attr, int $mode_in); + + /** @return bool */ + public function bind_param(string $types, &...$vars); + + /** @return bool */ + public function bind_result(&...$vars); + + /** @return bool */ + public function close(); + + /** @return null|false */ + public function data_seek(int $offset); + + /** @return bool */ + public function execute(); + + /** @return bool|null */ + public function fetch(); + + /** @return mysqli_warning|false */ + public function get_warnings(); + + /** @return mysqli_result|false */ + public function result_metadata(); + + /** @return bool */ + public function more_results(); + + /** @return bool */ + public function next_result(); + + /** @return int|string */ + public function num_rows(); + + /** @return bool */ + public function send_long_data(int $param_nr, string $data); + + /** @return void */ + public function free_result(); + + /** @return bool */ + public function reset(); + + /** @return bool */ + public function prepare(string $query); + + /** @return bool */ + public function store_result(); + + /** @return mysqli_result|false */ + public function get_result(); +} + +class mysqli_sql_exception extends RuntimeException +{} + +function mysqli_affected_rows(mysqli $mysql_link): int|string {} + +function mysqli_autocommit(mysqli $mysql_link, bool $mode): bool {} + +function mysqli_begin_transaction(mysqli $mysql_link, int $flags = -1, string $name = UNKNOWN): bool {} + +function mysqli_change_user(mysqli $mysql_link, string $user, string $password, ?string $database): bool {} + +function mysqli_character_set_name(mysqli $mysql_link): ?string {} + +function mysqli_close(mysqli $mysql_link): bool {} + +function mysqli_commit(mysqli $mysql_link, int $flags = -1, string $name = UNKNOWN): bool {} + +function mysqli_connect( + ?string $host = null, + ?string $user = null, + ?string $password = null, + ?string $database = null, + ?int $port = null, + ?string $socket = null +): mysqli|null|false {} + +function mysqli_connect_errno(): int {} + +function mysqli_connect_error(): ?string {} + +function mysqli_data_seek(mysqli_result $mysql_result, int $offset): bool {} + +function mysqli_dump_debug_info(mysqli $mysql_link): bool {} + +function mysqli_debug(string $debug): bool {} + +function mysqli_errno(mysqli $mysql_link): int {} + +function mysqli_error(mysqli $mysql_link): ?string {} + +function mysqli_error_list(mysqli $mysql_link): array {} + +function mysqli_stmt_execute(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_execute(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_fetch_field(mysqli_result $mysql_result): object|false {} + +function mysqli_fetch_fields(mysqli_result $mysql_result): array {} + +function mysqli_fetch_field_direct(mysqli_result $mysql_result, int $offset): object|false {} + +function mysqli_fetch_lengths(mysqli_result $mysql_result): array|false {} + +function mysqli_fetch_all(mysqli_result $mysql_result, int $mode = MYSQLI_NUM): array|false {} + +function mysqli_fetch_array(mysqli_result $mysql_result, int $fetchtype = MYSQLI_BOTH): array|null|false {} + +function mysqli_fetch_assoc(mysqli_result $mysql_result): ?array {} + +function mysqli_fetch_object( + mysqli_result $mysqli_result, + string $class_name = 'stdClass', + array $params = [] +): ?object {} + +function mysqli_fetch_row(mysqli_result $mysqli_result): ?array {} + +function mysqli_field_count(mysqli $mysqli_link): int {} + +function mysqli_field_seek(mysqli_result $mysqli_result, int $field_nr): bool {} + +function mysqli_field_tell(mysqli_result $mysqli_result): int {} + +function mysqli_free_result(mysqli_result $mysqli_result): void {} + +function mysqli_get_connection_stats(mysqli $mysqli_link): array {} + +function mysqli_get_client_stats(): array {} + +function mysqli_get_charset(mysqli $mysqli_link): ?object {} + +function mysqli_get_client_info(?mysqli $mysqli_link = null): ?string {} + +function mysqli_get_client_version(): int {} + +function mysqli_get_links_stats(): array {} + +function mysqli_get_host_info(mysqli $mysqli_link): string {} + +function mysqli_get_proto_info(mysqli $mysqli_link): int {} + +function mysqli_get_server_info(mysqli $mysqli_link): ?string {} + +function mysqli_get_server_version(mysqli $mysqli_link): int {} + +function mysqli_get_warnings(mysqli $mysqli_link): mysqli_warning|false {} + +function mysqli_init(): mysqli|false {} + +function mysqli_info(mysqli $mysqli_link): ?string {} + +function mysqli_insert_id(mysqli $mysqli_link): int|string {} + +function mysqli_kill(mysqli $mysqli_link, int $connection_id): bool {} + +function mysqli_more_results(mysqli $mysqli_link): bool {} + +function mysqli_multi_query(mysqli $mysqli_link, string $query): bool {} + +function mysqli_next_result(mysqli $mysqli_link): bool {} + +function mysqli_num_fields(mysqli_result $mysql_result): int {} + +function mysqli_num_rows(mysqli_result $mysqli_result): int|string {} + +/** @param mixed $value */ +function mysqli_options(mysqli $mysqli_link, int $option, $value): bool {} + +function mysqli_ping(mysqli $mysqli_link): bool {} + +function mysqli_poll(?array &$read, ?array &$write, array &$error, int $sec, int $usec = 0): int|false {} + +function mysqli_prepare(mysqli $mysqli_link, string $query): mysqli_stmt|false {} + +function mysqli_report(int $flags): bool {} + +function mysqli_query(mysqli $mysqli_link, string $query, int $resultmode = MYSQLI_STORE_RESULT): mysqli_result|bool {} + +function mysqli_real_connect( + mysqli $mysqli_link, + ?string $host = null, + ?string $user = null, + ?string $password = null, + ?string $database = null, + ?int $port = null, + int $flags = 0 +): mysqli|bool {} + +function mysqli_real_escape_string(mysqli $mysqli_link, string $string_to_escape): string {} + +function mysqli_real_query(mysqli $mysqli_link, string $query): bool {} + +function mysqli_reap_async_query(mysqli $mysqli_link): mysqli_result|bool {} + +function mysqli_release_savepoint(mysqli $mysqli_link, string $name): bool {} + +function mysqli_rollback(mysqli $mysqli_link, int $flags = 0, string $name = ''): bool {} + +function mysqli_savepoint(mysqli $mysqli_link, string $name): bool {} + +function mysqli_select_db(mysqli $mysqli_link, string $dbname): bool {} + +function mysqli_set_charset(mysqli $mysqli_link, string $charset): bool {} + +function mysqli_stmt_affected_rows(mysqli_stmt $mysql_stmt): int|string {} + +function mysqli_stmt_attr_get(mysqli_stmt $mysql_stmt, int $attr): int|false {} + +function mysqli_stmt_attr_set(mysqli_stmt $mysql_stmt, int $attr, int $mode_in): bool {} + +/** @param mixed &...$vars */ +function mysqli_stmt_bind_param(mysqli_stmt $mysql_stmt, string $types, &...$vars): bool {} + +/** @param mixed &...$vars */ +function mysqli_stmt_bind_result(mysqli_stmt $mysql_stmt, &...$vars): bool {} + +function mysqli_stmt_close(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_stmt_data_seek(mysqli_stmt $mysql_stmt, int $offset): ?bool {} + +function mysqli_stmt_errno(mysqli_stmt $mysql_stmt): int {} + +function mysqli_stmt_error(mysqli_stmt $mysql_stmt): ?string {} + +function mysqli_stmt_error_list(mysqli_stmt $mysql_stmt): array {} + +function mysqli_stmt_fetch(mysqli_stmt $mysql_stmt): ?bool {} + +function mysqli_stmt_field_count(mysqli_stmt $mysql_stmt): int {} + +function mysqli_stmt_free_result(mysqli_stmt $mysql_stmt): void {} + +function mysqli_stmt_get_result(mysqli_stmt $mysql_stmt): mysqli_result|false {} + +function mysqli_stmt_get_warnings(mysqli_stmt $mysql_stmt): mysqli_warning|false {} + +function mysqli_stmt_init(mysqli $mysql_link): mysqli_stmt|false {} + +function mysqli_stmt_insert_id(mysqli_stmt $mysql_stmt): int|string {} + +function mysqli_stmt_more_results(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_stmt_next_result(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_stmt_num_rows(mysqli_stmt $mysql_stmt): int|string {} + +function mysqli_stmt_param_count(mysqli_stmt $mysql_stmt): int {} + +function mysqli_stmt_prepare(mysqli_stmt $mysql_stmt, string $query): bool {} + +function mysqli_stmt_reset(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_stmt_result_metadata(mysqli_stmt $mysql_stmt): mysqli_result|false {} + +function mysqli_stmt_send_long_data(mysqli_stmt $mysql_stmt, int $param_nr, string $data): bool {} + +function mysqli_stmt_store_result(mysqli_stmt $mysql_stmt): bool {} + +function mysqli_stmt_sqlstate(mysqli_stmt $mysql_stmt): ?string {} + +function mysqli_sqlstate(mysqli $mysqli_link): ?string {} + +function mysqli_ssl_set( + mysqli $mysql_link, + string $key, + string $cert, + string $certificate_authority, + string $certificate_authority_path, + string $cipher +): bool {} + +function mysqli_stat(mysqli $mysql_link): string|false {} + +function mysqli_store_result(mysqli $mysql_link, int $flags = 0): mysqli_result|false {} + +function mysqli_thread_id(mysqli $mysql_link): int {} + +function mysqli_thread_safe(): bool {} + +function mysqli_use_result(mysqli $mysql_link): mysqli_result|false {} + +function mysqli_warning_count(mysqli $mysql_link): int {} + +function mysqli_refresh(mysqli $mysqli_link, int $options): bool {} + +function mysqli_escape_string(mysqli $mysqli_link, string $string_to_escape): string {} + +/** @param mixed $value */ +function mysqli_set_opt(mysqli $mysqli_link, int $option, $value): bool {} diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c index 85e7e93603..80c8ca76fa 100644 --- a/ext/mysqli/mysqli_api.c +++ b/ext/mysqli/mysqli_api.c @@ -786,7 +786,7 @@ PHP_FUNCTION(mysqli_data_seek) } /* }}} */ -/* {{{ proto void mysqli_debug(string debug) +/* {{{ proto bool mysqli_debug(string debug) */ PHP_FUNCTION(mysqli_debug) { diff --git a/ext/mysqli/mysqli_arginfo.h b/ext/mysqli/mysqli_arginfo.h new file mode 100644 index 0000000000..a6abfc45ce --- /dev/null +++ b/ext/mysqli/mysqli_arginfo.h @@ -0,0 +1,661 @@ +/* This is a generated file, edit the .stub.php file instead. */ + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli___construct, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 1) + ZEND_ARG_TYPE_INFO(0, socket, IS_STRING, 1) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_autocommit, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, mode, _IS_BOOL, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_begin_transaction, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_change_user, 0, 0, 3) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_character_set_name, 0, 0, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_close arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_commit arginfo_class_mysqli_begin_transaction + +#define arginfo_class_mysqli_connect arginfo_class_mysqli___construct + +#define arginfo_class_mysqli_dump_debug_info arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_debug, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, debug_options, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_get_charset arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_get_client_info arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_get_connection_stats arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_get_server_info arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_get_warnings arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_init arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_kill, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, connection_id, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_multi_query, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_more_results arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_next_result arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_ping arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_poll, 0, 0, 4) + ZEND_ARG_TYPE_INFO(1, read, IS_ARRAY, 1) + ZEND_ARG_TYPE_INFO(1, write, IS_ARRAY, 1) + ZEND_ARG_TYPE_INFO(1, error, IS_ARRAY, 0) + ZEND_ARG_TYPE_INFO(0, sec, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, usec, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_prepare arginfo_class_mysqli_multi_query + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_query, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, resultmode, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_connect, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 1) + ZEND_ARG_TYPE_INFO(0, socket, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_escape_string, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, string_to_escape, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_reap_async_query arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_escape_string arginfo_class_mysqli_real_escape_string + +#define arginfo_class_mysqli_real_query arginfo_class_mysqli_multi_query + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_release_savepoint, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_rollback arginfo_class_mysqli_begin_transaction + +#define arginfo_class_mysqli_savepoint arginfo_class_mysqli_release_savepoint + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_select_db, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_set_charset, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, charset, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_options, 0, 0, 2) + ZEND_ARG_TYPE_INFO(0, option, IS_LONG, 0) + ZEND_ARG_INFO(0, value) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_set_opt arginfo_class_mysqli_options + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_ssl_set, 0, 0, 5) + ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, cert, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, certificate_authority, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, certificate_authority_path, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, cipher, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_stat arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_init arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_store_result, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_thread_safe arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_use_result arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_refresh, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_warning___construct, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, mysqli_link, IS_OBJECT, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_warning_next arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result___construct, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, mysqli_link, IS_OBJECT, 0) + ZEND_ARG_TYPE_INFO(0, resmode, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_result_close arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_result_free arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_data_seek, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_result_fetch_field arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_result_fetch_fields arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_fetch_field_direct, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, field_nr, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_fetch_all, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, result_type, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_result_fetch_array arginfo_class_mysqli_result_fetch_all + +#define arginfo_class_mysqli_result_fetch_assoc arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_fetch_object, 0, 0, 0) + ZEND_ARG_TYPE_INFO(0, class_name, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, params, IS_ARRAY, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_result_fetch_row arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_result_field_seek arginfo_class_mysqli_result_fetch_field_direct + +#define arginfo_class_mysqli_result_free_result arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt___construct, 0, 0, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, statement, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_get, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_set, 0, 0, 2) + ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, mode_in, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_bind_param, 0, 0, 1) + ZEND_ARG_TYPE_INFO(0, types, IS_STRING, 0) + ZEND_ARG_VARIADIC_INFO(1, vars) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_bind_result, 0, 0, 0) + ZEND_ARG_VARIADIC_INFO(1, vars) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_stmt_close arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_data_seek arginfo_class_mysqli_result_data_seek + +#define arginfo_class_mysqli_stmt_execute arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_fetch arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_get_warnings arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_result_metadata arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_more_results arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_next_result arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_num_rows arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_send_long_data, 0, 0, 2) + ZEND_ARG_TYPE_INFO(0, param_nr, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_class_mysqli_stmt_free_result arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_reset arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_prepare arginfo_class_mysqli_multi_query + +#define arginfo_class_mysqli_stmt_store_result arginfo_class_mysqli_character_set_name + +#define arginfo_class_mysqli_stmt_get_result arginfo_class_mysqli_character_set_name + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_affected_rows, 0, 1, MAY_BE_LONG|MAY_BE_STRING) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_autocommit, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, mode, _IS_BOOL, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_begin_transaction, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_change_user, 0, 4, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_character_set_name, 0, 1, IS_STRING, 1) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_close, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_commit arginfo_mysqli_begin_transaction + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_connect, 0, 0, mysqli, MAY_BE_NULL|MAY_BE_FALSE) + ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 1) + ZEND_ARG_TYPE_INFO(0, socket, IS_STRING, 1) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_connect_errno, 0, 0, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_connect_error, 0, 0, IS_STRING, 1) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_data_seek, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_dump_debug_info arginfo_mysqli_close + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_debug, 0, 1, _IS_BOOL, 0) + ZEND_ARG_TYPE_INFO(0, debug, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_errno, 0, 1, IS_LONG, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_error arginfo_mysqli_character_set_name + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_error_list, 0, 1, IS_ARRAY, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_execute, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_execute arginfo_mysqli_stmt_execute + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_fetch_field, 0, 1, MAY_BE_OBJECT|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_fetch_fields, 0, 1, IS_ARRAY, 0) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_fetch_field_direct, 0, 2, MAY_BE_OBJECT|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_fetch_lengths, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_fetch_all, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_fetch_array, 0, 1, MAY_BE_ARRAY|MAY_BE_NULL|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, fetchtype, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_fetch_assoc, 0, 1, IS_ARRAY, 1) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_fetch_object, 0, 1, IS_OBJECT, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, class_name, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, params, IS_ARRAY, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_fetch_row, 0, 1, IS_ARRAY, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_field_count, 0, 1, IS_LONG, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_field_seek, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) + ZEND_ARG_TYPE_INFO(0, field_nr, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_field_tell, 0, 1, IS_LONG, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_free_result, 0, 1, IS_VOID, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_connection_stats, 0, 1, IS_ARRAY, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_client_stats, 0, 0, IS_ARRAY, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_charset, 0, 1, IS_OBJECT, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_client_info, 0, 0, IS_STRING, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 1) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_get_client_version arginfo_mysqli_connect_errno + +#define arginfo_mysqli_get_links_stats arginfo_mysqli_get_client_stats + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_host_info, 0, 1, IS_STRING, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_get_proto_info arginfo_mysqli_field_count + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_get_server_info, 0, 1, IS_STRING, 1) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_get_server_version arginfo_mysqli_field_count + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_get_warnings, 0, 1, mysqli_warning, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_init, 0, 0, mysqli, MAY_BE_FALSE) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_info arginfo_mysqli_get_server_info + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_insert_id, 0, 1, MAY_BE_LONG|MAY_BE_STRING) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_kill, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, connection_id, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_more_results, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_multi_query, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_next_result arginfo_mysqli_more_results + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_num_fields, 0, 1, IS_LONG, 0) + ZEND_ARG_OBJ_INFO(0, mysql_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_num_rows, 0, 1, MAY_BE_LONG|MAY_BE_STRING) + ZEND_ARG_OBJ_INFO(0, mysqli_result, mysqli_result, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_options, 0, 3, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, option, IS_LONG, 0) + ZEND_ARG_INFO(0, value) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_ping arginfo_mysqli_more_results + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_poll, 0, 4, MAY_BE_LONG|MAY_BE_FALSE) + ZEND_ARG_TYPE_INFO(1, read, IS_ARRAY, 1) + ZEND_ARG_TYPE_INFO(1, write, IS_ARRAY, 1) + ZEND_ARG_TYPE_INFO(1, error, IS_ARRAY, 0) + ZEND_ARG_TYPE_INFO(0, sec, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, usec, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_prepare, 0, 2, mysqli_stmt, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_report, 0, 1, _IS_BOOL, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_query, 0, 2, mysqli_result, MAY_BE_BOOL) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, resultmode, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_real_connect, 0, 1, mysqli, MAY_BE_BOOL) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, user, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, database, IS_STRING, 1) + ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 1) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_real_escape_string, 0, 2, IS_STRING, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, string_to_escape, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_real_query arginfo_mysqli_multi_query + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_reap_async_query, 0, 1, mysqli_result, MAY_BE_BOOL) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_release_savepoint, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_rollback, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_savepoint arginfo_mysqli_release_savepoint + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_select_db, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, dbname, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_set_charset, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, charset, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_stmt_affected_rows, 0, 1, MAY_BE_LONG|MAY_BE_STRING) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_stmt_attr_get, 0, 2, MAY_BE_LONG|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_attr_set, 0, 3, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, mode_in, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_bind_param, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, types, IS_STRING, 0) + ZEND_ARG_VARIADIC_INFO(1, vars) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_bind_result, 0, 1, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_VARIADIC_INFO(1, vars) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_stmt_close arginfo_mysqli_stmt_execute + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_data_seek, 0, 2, _IS_BOOL, 1) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_errno, 0, 1, IS_LONG, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_error, 0, 1, IS_STRING, 1) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_error_list, 0, 1, IS_ARRAY, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_fetch, 0, 1, _IS_BOOL, 1) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_stmt_field_count arginfo_mysqli_stmt_errno + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_free_result, 0, 1, IS_VOID, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_stmt_get_result, 0, 1, mysqli_result, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_stmt_get_warnings, 0, 1, mysqli_warning, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_stmt_init, 0, 1, mysqli_stmt, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_stmt_insert_id arginfo_mysqli_stmt_affected_rows + +#define arginfo_mysqli_stmt_more_results arginfo_mysqli_stmt_execute + +#define arginfo_mysqli_stmt_next_result arginfo_mysqli_stmt_execute + +#define arginfo_mysqli_stmt_num_rows arginfo_mysqli_stmt_affected_rows + +#define arginfo_mysqli_stmt_param_count arginfo_mysqli_stmt_errno + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_prepare, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, query, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_stmt_reset arginfo_mysqli_stmt_execute + +#define arginfo_mysqli_stmt_result_metadata arginfo_mysqli_stmt_get_result + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_stmt_send_long_data, 0, 3, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_stmt, mysqli_stmt, 0) + ZEND_ARG_TYPE_INFO(0, param_nr, IS_LONG, 0) + ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_stmt_store_result arginfo_mysqli_stmt_execute + +#define arginfo_mysqli_stmt_sqlstate arginfo_mysqli_stmt_error + +#define arginfo_mysqli_sqlstate arginfo_mysqli_get_server_info + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_ssl_set, 0, 6, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, cert, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, certificate_authority, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, certificate_authority_path, IS_STRING, 0) + ZEND_ARG_TYPE_INFO(0, cipher, IS_STRING, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mysqli_stat, 0, 1, MAY_BE_STRING|MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_store_result, 0, 1, mysqli_result, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_thread_id arginfo_mysqli_errno + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_thread_safe, 0, 0, _IS_BOOL, 0) +ZEND_END_ARG_INFO() + +ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_mysqli_use_result, 0, 1, mysqli_result, MAY_BE_FALSE) + ZEND_ARG_OBJ_INFO(0, mysql_link, mysqli, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_warning_count arginfo_mysqli_errno + +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mysqli_refresh, 0, 2, _IS_BOOL, 0) + ZEND_ARG_OBJ_INFO(0, mysqli_link, mysqli, 0) + ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0) +ZEND_END_ARG_INFO() + +#define arginfo_mysqli_escape_string arginfo_mysqli_real_escape_string + +#define arginfo_mysqli_set_opt arginfo_mysqli_options diff --git a/ext/mysqli/mysqli_fe.c b/ext/mysqli/mysqli_fe.c index 97e92e9438..07b24de106 100644 --- a/ext/mysqli/mysqli_fe.c +++ b/ext/mysqli/mysqli_fe.c @@ -29,6 +29,8 @@ #include "mysqli_fe.h" #include "mysqli_priv.h" +#include "mysqli_arginfo.h" + #ifdef MYSQLI_USE_FULL_TYPED_ARGINFO_0 #define MYSQLI_ZEND_ARG_OBJ_INFO_LINK() ZEND_ARG_OBJ_INFO(0, link, mysqli, 0) #define MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() ZEND_ARG_OBJ_INFO(0, result, mysqli_result, 0) @@ -39,435 +41,70 @@ #define MYSQLI_ZEND_ARG_OBJ_INFO_STMT() ZEND_ARG_INFO(0, stmt) #endif -ZEND_BEGIN_ARG_INFO(arginfo_mysqli_stmt_bind_result, 0) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_VARIADIC_INFO(1, vars) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO(arginfo_mysqli_stmt_bind_param, 0) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, types) - ZEND_ARG_VARIADIC_INFO(1, vars) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO(arginfo_class_mysqli_stmt_bind_result, 0) - ZEND_ARG_VARIADIC_INFO(1, vars) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO(arginfo_class_mysqli_stmt_bind_param, 0) - ZEND_ARG_INFO(0, types) - ZEND_ARG_VARIADIC_INFO(1, vars) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_poll, 0, 0, 4) - ZEND_ARG_ARRAY_INFO(1, read, 1) - ZEND_ARG_ARRAY_INFO(1, write, 1) - ZEND_ARG_ARRAY_INFO(1, error, 1) - ZEND_ARG_INFO(0, sec) - ZEND_ARG_INFO(0, usec) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_no_params, 0, 0, 0) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_link, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_optional_link, 0, 0, 0) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_autocommit, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, mode) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_autocommit, 0, 0, 1) - ZEND_ARG_INFO(0, mode) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_begin_transaction, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_begin_transaction, 0, 0, 0) - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_savepoint, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_savepoint, 0, 0, 1) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_release_savepoint, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_release_savepoint, 0, 0, 1) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_commit, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_commit, 0, 0, 0) - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_rollback, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_rollback, 0, 0, 0) - ZEND_ARG_INFO(0, flags) - ZEND_ARG_INFO(0, name) -ZEND_END_ARG_INFO() - - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_store_result, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, flags) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_store_result, 0, 0, 0) - ZEND_ARG_INFO(0, flags) -ZEND_END_ARG_INFO() - - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_change_user, 0, 0, 4) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, user) - ZEND_ARG_INFO(0, password) - ZEND_ARG_INFO(0, database) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_change_user, 0, 0, 3) - ZEND_ARG_INFO(0, user) - ZEND_ARG_INFO(0, password) - ZEND_ARG_INFO(0, database) -ZEND_END_ARG_INFO() - - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_connect, 0, 0, 0) - ZEND_ARG_INFO(0, host) - ZEND_ARG_INFO(0, user) - ZEND_ARG_INFO(0, password) - ZEND_ARG_INFO(0, database) - ZEND_ARG_INFO(0, port) - ZEND_ARG_INFO(0, socket) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_real_connect, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, host) - ZEND_ARG_INFO(0, user) - ZEND_ARG_INFO(0, password) - ZEND_ARG_INFO(0, database) - ZEND_ARG_INFO(0, port) - ZEND_ARG_INFO(0, socket) - ZEND_ARG_INFO(0, flags) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_connect, 0, 0, 0) - ZEND_ARG_INFO(0, host) - ZEND_ARG_INFO(0, user) - ZEND_ARG_INFO(0, password) - ZEND_ARG_INFO(0, database) - ZEND_ARG_INFO(0, port) - ZEND_ARG_INFO(0, socket) - ZEND_ARG_INFO(0, flags) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_result, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_only_statement, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_data_seek, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() - ZEND_ARG_INFO(0, offset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_data_seek, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, offset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_data_seek, 0, 0, 1) - ZEND_ARG_INFO(0, offset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_debug, 0, 0, 1) - ZEND_ARG_INFO(0, debug_options) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_result_and_fieldnr, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() - ZEND_ARG_INFO(0, field_nr) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result_and_fieldnr, 0, 0, 1) - ZEND_ARG_INFO(0, field_nr) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_fetch_array, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() - ZEND_ARG_INFO(0, result_type) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_fetch_array, 0, 0, 0) - ZEND_ARG_INFO(0, result_type) -ZEND_END_ARG_INFO() - - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_fetch_object, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_RESULT() - ZEND_ARG_INFO(0, class_name) - ZEND_ARG_ARRAY_INFO(0, params, 0) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_fetch_object, 0, 0, 0) - ZEND_ARG_INFO(0, class_name) - ZEND_ARG_ARRAY_INFO(0, params, 0) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_kill, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, connection_id) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_kill, 0, 0, 1) - ZEND_ARG_INFO(0, connection_id) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_query, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, query) - ZEND_ARG_INFO(0, resultmode) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_multi_query, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_real_query, 0, 0, 1) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_prepare, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_prepare, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_query, 0, 0, 1) - ZEND_ARG_INFO(0, query) - ZEND_ARG_INFO(0, resultmode) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_prepare, 0, 0, 1) - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_multi_query, 0, 0, 1) - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_query, 0, 0, 1) - ZEND_ARG_INFO(0, query) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_options, 0, 0, 3) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, option) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_options, 0, 0, 2) - ZEND_ARG_INFO(0, option) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_report, 0, 0, 1) - ZEND_ARG_INFO(0, flags) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_real_escape_string, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, string_to_escape) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_real_escape_string, 0, 0, 1) - ZEND_ARG_INFO(0, string_to_escape) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_select_db, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, database) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_select_db, 0, 0, 1) - ZEND_ARG_INFO(0, database) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_set_charset, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, charset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_set_charset, 0, 0, 1) - ZEND_ARG_INFO(0, charset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_attr_get, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, attribute) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_get, 0, 0, 1) - ZEND_ARG_INFO(0, attribute) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_attr_set, 0, 0, 3) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, attribute) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_attr_set, 0, 0, 2) - ZEND_ARG_INFO(0, attribute) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_stmt_send_long_data, 0, 0, 3) - MYSQLI_ZEND_ARG_OBJ_INFO_STMT() - ZEND_ARG_INFO(0, param_nr) - ZEND_ARG_INFO(0, data) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_stmt_send_long_data, 0, 0, 2) - ZEND_ARG_INFO(0, param_nr) - ZEND_ARG_INFO(0, data) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_ssl_set, 0, 0, 6) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, key) - ZEND_ARG_INFO(0, cert) - ZEND_ARG_INFO(0, certificate_authority) - ZEND_ARG_INFO(0, certificate_authority_path) - ZEND_ARG_INFO(0, cipher) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_ssl_set, 0, 0, 5) - ZEND_ARG_INFO(0, key) - ZEND_ARG_INFO(0, cert) - ZEND_ARG_INFO(0, certificate_authority) - ZEND_ARG_INFO(0, certificate_authority_path) - ZEND_ARG_INFO(0, cipher) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_refresh, 0, 0, 2) - MYSQLI_ZEND_ARG_OBJ_INFO_LINK() - ZEND_ARG_INFO(0, options) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_refresh, 0, 0, 1) - ZEND_ARG_INFO(0, options) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_mysqli_no_options, 0, 0, 0) -ZEND_END_ARG_INFO() - - /* {{{ mysqli_functions[] * * Every user visible function must have an entry in mysqli_functions[]. */ const zend_function_entry mysqli_functions[] = { - PHP_FE(mysqli_affected_rows, arginfo_mysqli_only_link) + PHP_FE(mysqli_affected_rows, arginfo_mysqli_affected_rows) PHP_FE(mysqli_autocommit, arginfo_mysqli_autocommit) PHP_FE(mysqli_begin_transaction, arginfo_mysqli_begin_transaction) PHP_FE(mysqli_change_user, arginfo_mysqli_change_user) - PHP_FE(mysqli_character_set_name, arginfo_mysqli_only_link) - PHP_FE(mysqli_close, arginfo_mysqli_only_link) + PHP_FE(mysqli_character_set_name, arginfo_mysqli_character_set_name) + PHP_FE(mysqli_close, arginfo_mysqli_close) PHP_FE(mysqli_commit, arginfo_mysqli_commit) PHP_FE(mysqli_connect, arginfo_mysqli_connect) - PHP_FE(mysqli_connect_errno, arginfo_mysqli_no_params) - PHP_FE(mysqli_connect_error, arginfo_mysqli_no_params) + PHP_FE(mysqli_connect_errno, arginfo_mysqli_connect_errno) + PHP_FE(mysqli_connect_error, arginfo_mysqli_connect_error) PHP_FE(mysqli_data_seek, arginfo_mysqli_data_seek) - PHP_FE(mysqli_dump_debug_info, arginfo_mysqli_only_link) + PHP_FE(mysqli_dump_debug_info, arginfo_mysqli_dump_debug_info) PHP_FE(mysqli_debug, arginfo_mysqli_debug) - PHP_FE(mysqli_errno, arginfo_mysqli_only_link) - PHP_FE(mysqli_error, arginfo_mysqli_only_link) - PHP_FE(mysqli_error_list, arginfo_mysqli_only_link) - PHP_FE(mysqli_stmt_execute, arginfo_mysqli_only_statement) - PHP_FALIAS(mysqli_execute, mysqli_stmt_execute, arginfo_mysqli_only_statement) - PHP_FE(mysqli_fetch_field, arginfo_mysqli_only_result) - PHP_FE(mysqli_fetch_fields, arginfo_mysqli_only_result) - PHP_FE(mysqli_fetch_field_direct, arginfo_mysqli_result_and_fieldnr) - PHP_FE(mysqli_fetch_lengths, arginfo_mysqli_only_result) + PHP_FE(mysqli_errno, arginfo_mysqli_errno) + PHP_FE(mysqli_error, arginfo_mysqli_error) + PHP_FE(mysqli_error_list, arginfo_mysqli_error_list) + PHP_FE(mysqli_stmt_execute, arginfo_mysqli_stmt_execute) + PHP_FALIAS(mysqli_execute, mysqli_stmt_execute, arginfo_mysqli_execute) + PHP_FE(mysqli_fetch_field, arginfo_mysqli_fetch_field) + PHP_FE(mysqli_fetch_fields, arginfo_mysqli_fetch_fields) + PHP_FE(mysqli_fetch_field_direct, arginfo_mysqli_fetch_field_direct) + PHP_FE(mysqli_fetch_lengths, arginfo_mysqli_fetch_lengths) #ifdef MYSQLI_USE_MYSQLND - PHP_FE(mysqli_fetch_all, arginfo_mysqli_fetch_array) + PHP_FE(mysqli_fetch_all, arginfo_mysqli_fetch_all) #endif PHP_FE(mysqli_fetch_array, arginfo_mysqli_fetch_array) - PHP_FE(mysqli_fetch_assoc, arginfo_mysqli_only_result) + PHP_FE(mysqli_fetch_assoc, arginfo_mysqli_fetch_assoc) PHP_FE(mysqli_fetch_object, arginfo_mysqli_fetch_object) - PHP_FE(mysqli_fetch_row, arginfo_mysqli_only_result) - PHP_FE(mysqli_field_count, arginfo_mysqli_only_link) - PHP_FE(mysqli_field_seek, arginfo_mysqli_result_and_fieldnr) - PHP_FE(mysqli_field_tell, arginfo_mysqli_only_result) - PHP_FE(mysqli_free_result, arginfo_mysqli_only_result) + PHP_FE(mysqli_fetch_row, arginfo_mysqli_fetch_row) + PHP_FE(mysqli_field_count, arginfo_mysqli_field_count) + PHP_FE(mysqli_field_seek, arginfo_mysqli_field_seek) + PHP_FE(mysqli_field_tell, arginfo_mysqli_field_tell) + PHP_FE(mysqli_free_result, arginfo_mysqli_free_result) #if defined(MYSQLI_USE_MYSQLND) - PHP_FE(mysqli_get_connection_stats, arginfo_mysqli_only_link) - PHP_FE(mysqli_get_client_stats, arginfo_mysqli_no_params) + PHP_FE(mysqli_get_connection_stats, arginfo_mysqli_get_connection_stats) + PHP_FE(mysqli_get_client_stats, arginfo_mysqli_get_client_stats) #endif #ifdef HAVE_MYSQLI_GET_CHARSET - PHP_FE(mysqli_get_charset, arginfo_mysqli_only_link) + PHP_FE(mysqli_get_charset, arginfo_mysqli_get_charset) #endif - PHP_FE(mysqli_get_client_info, arginfo_mysqli_optional_link) - PHP_FE(mysqli_get_client_version, arginfo_mysqli_no_options) - PHP_FE(mysqli_get_links_stats, arginfo_mysqli_no_options) - PHP_FE(mysqli_get_host_info, arginfo_mysqli_only_link) - PHP_FE(mysqli_get_proto_info, arginfo_mysqli_only_link) - PHP_FE(mysqli_get_server_info, arginfo_mysqli_only_link) - PHP_FE(mysqli_get_server_version, arginfo_mysqli_only_link) - PHP_FE(mysqli_get_warnings, arginfo_mysqli_only_link) - PHP_FE(mysqli_init, arginfo_mysqli_no_params) - PHP_FE(mysqli_info, arginfo_mysqli_only_link) - PHP_FE(mysqli_insert_id, arginfo_mysqli_only_link) + PHP_FE(mysqli_get_client_info, arginfo_mysqli_get_client_info) + PHP_FE(mysqli_get_client_version, arginfo_mysqli_get_client_version) + PHP_FE(mysqli_get_links_stats, arginfo_mysqli_get_links_stats) + PHP_FE(mysqli_get_host_info, arginfo_mysqli_get_host_info) + PHP_FE(mysqli_get_proto_info, arginfo_mysqli_get_proto_info) + PHP_FE(mysqli_get_server_info, arginfo_mysqli_get_server_info) + PHP_FE(mysqli_get_server_version, arginfo_mysqli_get_server_version) + PHP_FE(mysqli_get_warnings, arginfo_mysqli_get_warnings) + PHP_FE(mysqli_init, arginfo_mysqli_init) + PHP_FE(mysqli_info, arginfo_mysqli_info) + PHP_FE(mysqli_insert_id, arginfo_mysqli_insert_id) PHP_FE(mysqli_kill, arginfo_mysqli_kill) - PHP_FE(mysqli_more_results, arginfo_mysqli_only_link) + PHP_FE(mysqli_more_results, arginfo_mysqli_more_results) PHP_FE(mysqli_multi_query, arginfo_mysqli_multi_query) - PHP_FE(mysqli_next_result, arginfo_mysqli_only_link) - PHP_FE(mysqli_num_fields, arginfo_mysqli_only_result) - PHP_FE(mysqli_num_rows, arginfo_mysqli_only_result) + PHP_FE(mysqli_next_result, arginfo_mysqli_next_result) + PHP_FE(mysqli_num_fields, arginfo_mysqli_num_fields) + PHP_FE(mysqli_num_rows, arginfo_mysqli_num_rows) PHP_FE(mysqli_options, arginfo_mysqli_options) - PHP_FE(mysqli_ping, arginfo_mysqli_only_link) + PHP_FE(mysqli_ping, arginfo_mysqli_ping) #if defined(MYSQLI_USE_MYSQLND) PHP_FE(mysqli_poll, arginfo_mysqli_poll) #endif @@ -478,7 +115,7 @@ const zend_function_entry mysqli_functions[] = { PHP_FE(mysqli_real_escape_string, arginfo_mysqli_real_escape_string) PHP_FE(mysqli_real_query, arginfo_mysqli_real_query) #if defined(MYSQLI_USE_MYSQLND) - PHP_FE(mysqli_reap_async_query, arginfo_mysqli_only_link) + PHP_FE(mysqli_reap_async_query, arginfo_mysqli_reap_async_query) #endif PHP_FE(mysqli_release_savepoint, arginfo_mysqli_release_savepoint) PHP_FE(mysqli_rollback, arginfo_mysqli_rollback) @@ -487,51 +124,51 @@ const zend_function_entry mysqli_functions[] = { #ifdef HAVE_MYSQLI_SET_CHARSET PHP_FE(mysqli_set_charset, arginfo_mysqli_set_charset) #endif - PHP_FE(mysqli_stmt_affected_rows, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_affected_rows, arginfo_mysqli_stmt_affected_rows) PHP_FE(mysqli_stmt_attr_get, arginfo_mysqli_stmt_attr_get) PHP_FE(mysqli_stmt_attr_set, arginfo_mysqli_stmt_attr_set) PHP_FE(mysqli_stmt_bind_param, arginfo_mysqli_stmt_bind_param) PHP_FE(mysqli_stmt_bind_result, arginfo_mysqli_stmt_bind_result) - PHP_FE(mysqli_stmt_close, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_close, arginfo_mysqli_stmt_close) PHP_FE(mysqli_stmt_data_seek, arginfo_mysqli_stmt_data_seek) - PHP_FE(mysqli_stmt_errno, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_error, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_error_list, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_fetch, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_field_count, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_free_result, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_errno, arginfo_mysqli_stmt_errno) + PHP_FE(mysqli_stmt_error, arginfo_mysqli_stmt_error) + PHP_FE(mysqli_stmt_error_list, arginfo_mysqli_stmt_error_list) + PHP_FE(mysqli_stmt_fetch, arginfo_mysqli_stmt_fetch) + PHP_FE(mysqli_stmt_field_count, arginfo_mysqli_stmt_field_count) + PHP_FE(mysqli_stmt_free_result, arginfo_mysqli_stmt_free_result) #if defined(MYSQLI_USE_MYSQLND) - PHP_FE(mysqli_stmt_get_result, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_get_result, arginfo_mysqli_stmt_get_result) #endif - PHP_FE(mysqli_stmt_get_warnings, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_init, arginfo_mysqli_only_link) - PHP_FE(mysqli_stmt_insert_id, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_get_warnings, arginfo_mysqli_stmt_get_warnings) + PHP_FE(mysqli_stmt_init, arginfo_mysqli_stmt_init) + PHP_FE(mysqli_stmt_insert_id, arginfo_mysqli_stmt_insert_id) #if defined(MYSQLI_USE_MYSQLND) - PHP_FE(mysqli_stmt_more_results, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_next_result, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_more_results, arginfo_mysqli_stmt_more_results) + PHP_FE(mysqli_stmt_next_result, arginfo_mysqli_stmt_next_result) #endif - PHP_FE(mysqli_stmt_num_rows, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_param_count, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_num_rows, arginfo_mysqli_stmt_num_rows) + PHP_FE(mysqli_stmt_param_count, arginfo_mysqli_stmt_param_count) PHP_FE(mysqli_stmt_prepare, arginfo_mysqli_stmt_prepare) - PHP_FE(mysqli_stmt_reset, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_result_metadata, arginfo_mysqli_only_statement) + PHP_FE(mysqli_stmt_reset, arginfo_mysqli_stmt_reset) + PHP_FE(mysqli_stmt_result_metadata, arginfo_mysqli_stmt_result_metadata) PHP_FE(mysqli_stmt_send_long_data, arginfo_mysqli_stmt_send_long_data) - PHP_FE(mysqli_stmt_store_result, arginfo_mysqli_only_statement) - PHP_FE(mysqli_stmt_sqlstate, arginfo_mysqli_only_statement) - PHP_FE(mysqli_sqlstate, arginfo_mysqli_only_link) + PHP_FE(mysqli_stmt_store_result, arginfo_mysqli_stmt_store_result) + PHP_FE(mysqli_stmt_sqlstate, arginfo_mysqli_stmt_sqlstate) + PHP_FE(mysqli_sqlstate, arginfo_mysqli_sqlstate) PHP_FE(mysqli_ssl_set, arginfo_mysqli_ssl_set) - PHP_FE(mysqli_stat, arginfo_mysqli_only_link) + PHP_FE(mysqli_stat, arginfo_mysqli_stat) PHP_FE(mysqli_store_result, arginfo_mysqli_store_result) - PHP_FE(mysqli_thread_id, arginfo_mysqli_only_link) - PHP_FE(mysqli_thread_safe, arginfo_mysqli_no_params) - PHP_FE(mysqli_use_result, arginfo_mysqli_only_link) - PHP_FE(mysqli_warning_count, arginfo_mysqli_only_link) + PHP_FE(mysqli_thread_id, arginfo_mysqli_thread_id) + PHP_FE(mysqli_thread_safe, arginfo_mysqli_thread_safe) + PHP_FE(mysqli_use_result, arginfo_mysqli_use_result) + PHP_FE(mysqli_warning_count, arginfo_mysqli_warning_count) PHP_FE(mysqli_refresh, arginfo_mysqli_refresh) /* Aliases */ - PHP_FALIAS(mysqli_escape_string, mysqli_real_escape_string, arginfo_mysqli_query) - PHP_FALIAS(mysqli_set_opt, mysqli_options, NULL) + PHP_FALIAS(mysqli_escape_string, mysqli_real_escape_string, arginfo_mysqli_escape_string) + PHP_FALIAS(mysqli_set_opt, mysqli_options, arginfo_mysqli_set_opt) PHP_FE_END }; @@ -539,119 +176,119 @@ const zend_function_entry mysqli_functions[] = { /* {{{ mysqli_link_methods[] * - * Every user visible function must have an entry in mysqli_functions[]. + * Every user visible function must have an entry in mysqli_link_methods[]. */ const zend_function_entry mysqli_link_methods[] = { PHP_ME_MAPPING(autocommit, mysqli_autocommit, arginfo_class_mysqli_autocommit, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(begin_transaction, mysqli_begin_transaction, arginfo_class_mysqli_begin_transaction, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(change_user,mysqli_change_user, arginfo_class_mysqli_change_user, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(character_set_name, mysqli_character_set_name, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(close, mysqli_close, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(change_user, mysqli_change_user, arginfo_class_mysqli_change_user, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(character_set_name, mysqli_character_set_name, arginfo_class_mysqli_character_set_name, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(close, mysqli_close, arginfo_class_mysqli_close, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(commit, mysqli_commit, arginfo_class_mysqli_commit, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(connect, mysqli_connect, arginfo_mysqli_connect, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(dump_debug_info, mysqli_dump_debug_info, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(debug, mysqli_debug, arginfo_mysqli_debug, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(connect, mysqli_connect, arginfo_class_mysqli_connect, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(dump_debug_info, mysqli_dump_debug_info, arginfo_class_mysqli_dump_debug_info, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(debug, mysqli_debug, arginfo_class_mysqli_debug, ZEND_ACC_PUBLIC) #ifdef HAVE_MYSQLI_GET_CHARSET - PHP_ME_MAPPING(get_charset, mysqli_get_charset, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_charset, mysqli_get_charset, arginfo_class_mysqli_get_charset, ZEND_ACC_PUBLIC) #endif - PHP_ME_MAPPING(get_client_info, mysqli_get_client_info, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_client_info, mysqli_get_client_info, arginfo_class_mysqli_get_client_info, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(get_connection_stats, mysqli_get_connection_stats, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_connection_stats, mysqli_get_connection_stats, arginfo_class_mysqli_get_connection_stats, ZEND_ACC_PUBLIC) #endif - PHP_ME_MAPPING(get_server_info, mysqli_get_server_info, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(get_warnings, mysqli_get_warnings, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(init,mysqli_init_method, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(kill,mysqli_kill, arginfo_class_mysqli_kill, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_server_info, mysqli_get_server_info, arginfo_class_mysqli_get_server_info, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_warnings, mysqli_get_warnings, arginfo_class_mysqli_get_warnings, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(init, mysqli_init_method, arginfo_class_mysqli_init, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(kill, mysqli_kill, arginfo_class_mysqli_kill, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(multi_query, mysqli_multi_query, arginfo_class_mysqli_multi_query, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(__construct, mysqli_link_construct, arginfo_mysqli_connect, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(more_results, mysqli_more_results, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(next_result, mysqli_next_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(__construct, mysqli_link_construct, arginfo_class_mysqli___construct, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(more_results, mysqli_more_results, arginfo_class_mysqli_more_results, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(next_result, mysqli_next_result, arginfo_class_mysqli_next_result, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(options, mysqli_options, arginfo_class_mysqli_options, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(ping, mysqli_ping, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(ping, mysqli_ping, arginfo_class_mysqli_ping, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(poll, mysqli_poll, arginfo_mysqli_poll, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC) + PHP_ME_MAPPING(poll, mysqli_poll, arginfo_class_mysqli_poll, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC) #endif PHP_ME_MAPPING(prepare, mysqli_prepare, arginfo_class_mysqli_prepare, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(query, mysqli_query, arginfo_class_mysqli_query, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(real_connect, mysqli_real_connect, arginfo_class_mysqli_real_connect, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(real_escape_string, mysqli_real_escape_string, arginfo_class_mysqli_real_escape_string, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(reap_async_query, mysqli_reap_async_query, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(reap_async_query, mysqli_reap_async_query, arginfo_class_mysqli_reap_async_query, ZEND_ACC_PUBLIC) #endif PHP_ME_MAPPING(escape_string, mysqli_real_escape_string, arginfo_class_mysqli_real_escape_string, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(real_query, mysqli_real_query, arginfo_class_mysqli_real_query, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(release_savepoint, mysqli_release_savepoint, arginfo_class_mysqli_release_savepoint, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(rollback, mysqli_rollback, arginfo_class_mysqli_rollback, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(savepoint, mysqli_savepoint, arginfo_class_mysqli_savepoint, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(select_db,mysqli_select_db, arginfo_class_mysqli_select_db, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(select_db, mysqli_select_db, arginfo_class_mysqli_select_db, ZEND_ACC_PUBLIC) #ifdef HAVE_MYSQLI_SET_CHARSET PHP_ME_MAPPING(set_charset, mysqli_set_charset, arginfo_class_mysqli_set_charset, ZEND_ACC_PUBLIC) #endif - PHP_ME_MAPPING(set_opt, mysqli_options, arginfo_class_mysqli_options, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(set_opt, mysqli_options, arginfo_class_mysqli_set_opt, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(ssl_set, mysqli_ssl_set, arginfo_class_mysqli_ssl_set, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(stat, mysqli_stat, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(stmt_init, mysqli_stmt_init, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(store_result, mysqli_store_result, arginfo_class_store_result, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(thread_safe, mysqli_thread_safe, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(use_result, mysqli_use_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(refresh,mysqli_refresh, arginfo_class_mysqli_refresh, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(stat, mysqli_stat, arginfo_class_mysqli_stat, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(stmt_init, mysqli_stmt_init, arginfo_class_mysqli_stmt_init, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(store_result, mysqli_store_result, arginfo_class_mysqli_store_result, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(thread_safe, mysqli_thread_safe, arginfo_class_mysqli_thread_safe, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(use_result, mysqli_use_result, arginfo_class_mysqli_use_result, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(refresh, mysqli_refresh, arginfo_class_mysqli_refresh, ZEND_ACC_PUBLIC) PHP_FE_END }; /* }}} */ /* {{{ mysqli_result_methods[] * - * Every user visible function must have an entry in mysqli_result_functions[]. + * Every user visible function must have an entry in mysqli_result_methods[]. */ const zend_function_entry mysqli_result_methods[] = { - PHP_ME_MAPPING(__construct, mysqli_result_construct, NULL, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(close, mysqli_free_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(free, mysqli_free_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(data_seek, mysqli_data_seek, arginfo_class_mysqli_data_seek, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_field, mysqli_fetch_field, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_fields, mysqli_fetch_fields, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_field_direct, mysqli_fetch_field_direct, arginfo_class_mysqli_result_and_fieldnr, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(__construct, mysqli_result_construct, arginfo_class_mysqli_result___construct, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(close, mysqli_free_result, arginfo_class_mysqli_result_close, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(free, mysqli_free_result, arginfo_class_mysqli_result_free, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(data_seek, mysqli_data_seek, arginfo_class_mysqli_result_data_seek, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_field, mysqli_fetch_field, arginfo_class_mysqli_result_fetch_field, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_fields, mysqli_fetch_fields, arginfo_class_mysqli_result_fetch_fields, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_field_direct, mysqli_fetch_field_direct, arginfo_class_mysqli_result_fetch_field_direct, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(fetch_all, mysqli_fetch_all, arginfo_class_mysqli_fetch_array, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_all, mysqli_fetch_all, arginfo_class_mysqli_result_fetch_all, ZEND_ACC_PUBLIC) #endif - PHP_ME_MAPPING(fetch_array, mysqli_fetch_array, arginfo_class_mysqli_fetch_array, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_assoc, mysqli_fetch_assoc, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_object,mysqli_fetch_object, arginfo_class_mysqli_fetch_object, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch_row, mysqli_fetch_row, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(field_seek, mysqli_field_seek, arginfo_class_mysqli_result_and_fieldnr, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(free_result, mysqli_free_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_array, mysqli_fetch_array, arginfo_class_mysqli_result_fetch_array, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_assoc, mysqli_fetch_assoc, arginfo_class_mysqli_result_fetch_assoc, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_object, mysqli_fetch_object, arginfo_class_mysqli_result_fetch_object, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch_row, mysqli_fetch_row, arginfo_class_mysqli_result_fetch_row, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(field_seek, mysqli_field_seek, arginfo_class_mysqli_result_field_seek, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(free_result, mysqli_free_result, arginfo_class_mysqli_result_free_result, ZEND_ACC_PUBLIC) PHP_FE_END }; /* }}} */ /* {{{ mysqli_stmt_methods[] * - * Every user visible function must have an entry in mysqli_stmt_functions[]. + * Every user visible function must have an entry in mysqli_stmt_methods[]. */ const zend_function_entry mysqli_stmt_methods[] = { - PHP_ME_MAPPING(__construct, mysqli_stmt_construct, NULL, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(__construct, mysqli_stmt_construct, arginfo_class_mysqli_stmt___construct, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(attr_get, mysqli_stmt_attr_get, arginfo_class_mysqli_stmt_attr_get, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(attr_set,mysqli_stmt_attr_set, arginfo_class_mysqli_stmt_attr_set, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(bind_param,mysqli_stmt_bind_param, arginfo_class_mysqli_stmt_bind_param, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(bind_result,mysqli_stmt_bind_result, arginfo_class_mysqli_stmt_bind_result, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(close, mysqli_stmt_close, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(data_seek, mysqli_stmt_data_seek, arginfo_class_mysqli_data_seek, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(execute, mysqli_stmt_execute, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(fetch, mysqli_stmt_fetch, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(get_warnings, mysqli_stmt_get_warnings, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(result_metadata, mysqli_stmt_result_metadata, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(attr_set, mysqli_stmt_attr_set, arginfo_class_mysqli_stmt_attr_set, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(bind_param, mysqli_stmt_bind_param, arginfo_class_mysqli_stmt_bind_param, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(bind_result, mysqli_stmt_bind_result, arginfo_class_mysqli_stmt_bind_result, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(close, mysqli_stmt_close, arginfo_class_mysqli_stmt_close, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(data_seek, mysqli_stmt_data_seek, arginfo_class_mysqli_stmt_data_seek, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(execute, mysqli_stmt_execute, arginfo_class_mysqli_stmt_execute, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(fetch, mysqli_stmt_fetch, arginfo_class_mysqli_stmt_fetch, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_warnings, mysqli_stmt_get_warnings, arginfo_class_mysqli_stmt_get_warnings, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(result_metadata, mysqli_stmt_result_metadata, arginfo_class_mysqli_stmt_result_metadata, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(more_results, mysqli_stmt_more_results, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(next_result, mysqli_stmt_next_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(more_results, mysqli_stmt_more_results, arginfo_class_mysqli_stmt_more_results, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(next_result, mysqli_stmt_next_result, arginfo_class_mysqli_stmt_next_result, ZEND_ACC_PUBLIC) #endif - PHP_ME_MAPPING(num_rows, mysqli_stmt_num_rows, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(num_rows, mysqli_stmt_num_rows, arginfo_class_mysqli_stmt_num_rows, ZEND_ACC_PUBLIC) PHP_ME_MAPPING(send_long_data, mysqli_stmt_send_long_data, arginfo_class_mysqli_stmt_send_long_data, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(free_result, mysqli_stmt_free_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(reset, mysqli_stmt_reset, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(prepare, mysqli_stmt_prepare, arginfo_class_mysqli_prepare, ZEND_ACC_PUBLIC) - PHP_ME_MAPPING(store_result, mysqli_stmt_store_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(free_result, mysqli_stmt_free_result, arginfo_class_mysqli_stmt_free_result, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(reset, mysqli_stmt_reset, arginfo_class_mysqli_stmt_reset, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(prepare, mysqli_stmt_prepare, arginfo_class_mysqli_stmt_prepare, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(store_result, mysqli_stmt_store_result, arginfo_class_mysqli_stmt_store_result, ZEND_ACC_PUBLIC) #if defined(MYSQLI_USE_MYSQLND) - PHP_ME_MAPPING(get_result, mysqli_stmt_get_result, arginfo_mysqli_no_params, ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(get_result, mysqli_stmt_get_result, arginfo_class_mysqli_stmt_get_result, ZEND_ACC_PUBLIC) #endif PHP_FE_END }; diff --git a/ext/mysqli/mysqli_warning.c b/ext/mysqli/mysqli_warning.c index a76c1b1a3f..c15afa0c4c 100644 --- a/ext/mysqli/mysqli_warning.c +++ b/ext/mysqli/mysqli_warning.c @@ -26,6 +26,8 @@ #include "php_mysqli_structs.h" #include "mysqli_priv.h" +#include "mysqli_arginfo.h" + /* Define these in the PHP7 tree to make merging easy process */ #define ZSTR_DUPLICATE (1<<0) #define ZSTR_AUTOFREE (1<<1) @@ -318,8 +320,8 @@ PHP_METHOD(mysqli_warning, __construct) /* {{{ mysqli_warning_methods */ const zend_function_entry mysqli_warning_methods[] = { - PHP_ME(mysqli_warning, __construct, NULL, ZEND_ACC_PROTECTED) - PHP_ME(mysqli_warning, next, NULL, ZEND_ACC_PUBLIC) + PHP_ME(mysqli_warning, __construct, arginfo_class_mysqli_warning___construct, ZEND_ACC_PROTECTED) + PHP_ME(mysqli_warning, next, arginfo_class_mysqli_warning_next, ZEND_ACC_PUBLIC) PHP_FE_END }; /* }}} */ |