# The mysqli class

(PHP 5, PHP 7)

## Introduction

Represents a connection between PHP and a MySQL database.

## Class synopsis

mysqli {
/* Properties */
int $affected_rows;
int $connect_errno;
string $connect_error;
int $errno;
array $error_list;
string $error;
int $field_count;
string $client_info;
int $client_version;
string $host_info;
string $protocol_version;
string $server_info;
int $server_version;
string $info;
mixed $insert_id;
string $sqlstate;
int $thread_id;
int $warning_count;
/* Methods */
public __construct ([ string `$host` = ini_get("mysqli.default_host") [, string `$username` = ini_get("mysqli.default_user") [, string `$passwd` = ini_get("mysqli.default_pw") [, string `$dbname` = "" [, int `$port` = ini_get("mysqli.default_port") [, string `$socket` = ini_get("mysqli.default_socket") ]]]]]] )
public autocommit ( bool `$mode` ) : bool
public begin_transaction ([ int `$flags` = 0 [, string `$name` ]] ) : bool
public change_user ( string `$user` , string `$password` , string `$database` ) : bool
public character_set_name ( ) : string
public close ( ) : bool
public commit ([ int `$flags` = 0 [, string `$name` ]] ) : bool
public connect ([ string `$host` = ini_get("mysqli.default_host") [, string `$username` = ini_get("mysqli.default_user") [, string `$passwd` = ini_get("mysqli.default_pw") [, string `$dbname` = "" [, int `$port` = ini_get("mysqli.default_port") [, string `$socket` = ini_get("mysqli.default_socket") ]]]]]] ) : void
public debug ( string `$message` ) : bool
public dump_debug_info ( ) : bool
public get_charset ( ) : object
public get_client_info ( ) : string
public get_connection_stats ( ) : bool
public get_server_info ( ) : string
public get_warnings ( ) : mysqli_warning
public init ( ) : mysqli
public kill ( int `$processid` ) : bool
public more_results ( ) : bool
public multi_query ( string `$query` ) : bool
public next_result ( ) : bool
public options ( int `$option` , mixed `$value` ) : bool
public ping ( ) : bool
public static poll ( array `&$read` , array `&$error` , array `&$reject` , int `$sec` [, int `$usec` = 0 ] ) : int
public prepare ( string `$query` ) : mysqli_stmt
public query ( string `$query` [, int `$resultmode` = MYSQLI_STORE_RESULT ] ) : mixed
public real_connect ([ string `$host` [, string `$username` [, string `$passwd` [, string `$dbname` [, int `$port` [, string `$socket` [, int `$flags` ]]]]]]] ) : bool
public escape_string ( string `$escapestr` ) : string
real_escape_string ( string `$escapestr` ) : string
public real_query ( string `$query` ) : bool
public reap_async_query ( ) : mysqli_result
public refresh ( int `$options` ) : bool
public release_savepoint ( string `$name` ) : bool
public rollback ([ int `$flags` = 0 [, string `$name` ]] ) : bool
public savepoint ( string `$name` ) : bool
public select_db ( string `$dbname` ) : bool
public set_charset ( string `$charset` ) : bool
public ssl_set ( string `$key` , string `$cert` , string `$ca` , string `$capath` , string `$cipher` ) : bool
public stat ( ) : string
public stmt_init ( ) : mysqli_stmt
public store_result ([ int `$option` ] ) : mysqli_result
public thread_safe ( ) : void
public use_result ( ) : mysqli_result
}

## Table of Contents

- mysqli::$affected_rows — Gets the number of affected rows in a previous MySQL operation
- mysqli::autocommit — Turns on or off auto-committing database modifications
- mysqli::begin_transaction — Starts a transaction
- mysqli::change_user — Changes the user of the specified database connection
- mysqli::character_set_name — Returns the default character set for the database connection
- mysqli::close — Closes a previously opened database connection
- mysqli::commit — Commits the current transaction
- mysqli::$connect_errno — Returns the error code from last connect call
- mysqli::$connect_error — Returns a string description of the last connect error
- mysqli::__construct — Open a new connection to the MySQL server
- mysqli::debug — Performs debugging operations
- mysqli::dump_debug_info — Dump debugging information into the log
- mysqli::$errno — Returns the error code for the most recent function call
- mysqli::$error_list — Returns a list of errors from the last command executed
- mysqli::$error — Returns a string description of the last error
- mysqli::$field_count — Returns the number of columns for the most recent query
- mysqli::get_charset — Returns a character set object
- mysqli::$client_info — Get MySQL client info
- mysqli::$client_version — Returns the MySQL client version as an integer
- mysqli::get_connection_stats — Returns statistics about the client connection
- mysqli::$host_info — Returns a string representing the type of connection used
- mysqli::$protocol_version — Returns the version of the MySQL protocol used
- mysqli::$server_info — Returns the version of the MySQL server
- mysqli::$server_version — Returns the version of the MySQL server as an integer
- mysqli::get_warnings — Get result of SHOW WARNINGS
- mysqli::$info — Retrieves information about the most recently executed query
- mysqli::init — Initializes MySQLi and returns a resource for use with mysqli_real_connect()
- mysqli::$insert_id — Returns the auto generated id used in the latest query
- mysqli::kill — Asks the server to kill a MySQL thread
- mysqli::more_results — Check if there are any more query results from a multi query
- mysqli::multi_query — Performs a query on the database
- mysqli::next_result — Prepare next result from multi_query
- mysqli::options — Set options
- mysqli::ping — Pings a server connection, or tries to reconnect if the connection has gone down
- mysqli::poll — Poll connections
- mysqli::prepare — Prepare an SQL statement for execution
- mysqli::query — Performs a query on the database
- mysqli::real_connect — Opens a connection to a mysql server
- mysqli::real_escape_string — Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
- mysqli::real_query — Execute an SQL query
- mysqli::reap_async_query — Get result from async query
- mysqli::refresh — Refreshes
- mysqli::release_savepoint — Removes the named savepoint from the set of savepoints of the current transaction
- mysqli::rollback — Rolls back current transaction
- mysqli::savepoint — Set a named transaction savepoint
- mysqli::select_db — Selects the default database for database queries
- mysqli::set_charset — Sets the default client character set
- mysqli::$sqlstate — Returns the SQLSTATE error from previous MySQL operation
- mysqli::ssl_set — Used for establishing secure connections using SSL
- mysqli::stat — Gets the current system status
- mysqli::stmt_init — Initializes a statement and returns an object for use with mysqli_stmt_prepare
- mysqli::store_result — Transfers a result set from the last query
- mysqli::$thread_id — Returns the thread ID for the current connection
- mysqli::thread_safe — Returns whether thread safety is given or not
- mysqli::use_result — Initiate a result set retrieval
- mysqli::$warning_count — Returns the number of warnings from the last query for the given link