Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

MYSQLI_READ_DEFAULT_GROUP (int)

Read options from the named group from my.cnf or the file specified with MYSQLI_READ_DEFAULT_FILE

MYSQLI_READ_DEFAULT_FILE (int)

Read options from the named option file instead of from my.cnf

MYSQLI_OPT_CONNECT_TIMEOUT (int)

Connect timeout in seconds

MYSQLI_OPT_READ_TIMEOUT (int)

Command execution result timeout in seconds. Available as of PHP 7.2.0.

MYSQLI_OPT_LOCAL_INFILE (int)

Enables command LOAD LOCAL INFILE

MYSQLI_OPT_INT_AND_FLOAT_NATIVE (int)

Convert integer and float columns back to PHP numbers. Only valid for mysqlnd.

MYSQLI_OPT_NET_CMD_BUFFER_SIZE (int)

The size of the internal command/network buffer. Only valid for mysqlnd.

MYSQLI_OPT_NET_READ_BUFFER_SIZE (int)

Maximum read chunk size in bytes when reading the body of a MySQL command packet. Only valid for mysqlnd.

MYSQLI_OPT_SSL_VERIFY_SERVER_CERT (int)

Requires MySQL 5.1.10 and up

MYSQLI_INIT_COMMAND (int)

Command to execute when connecting to MySQL server. Will automatically be re-executed when reconnecting.

MYSQLI_CLIENT_SSL (int)

Use SSL (encrypted protocol). This option should not be set by application programs; it is set internally in the MySQL client library

MYSQLI_CLIENT_COMPRESS (int)

Use compression protocol

MYSQLI_CLIENT_INTERACTIVE (int)

Allow interactive_timeout seconds (instead of wait_timeout seconds) of inactivity before closing the connection. The client's session wait_timeout variable will be set to the value of the session interactive_timeout variable.

MYSQLI_CLIENT_IGNORE_SPACE (int)

Allow spaces after function names. Makes all functions names reserved words.

MYSQLI_CLIENT_NO_SCHEMA (int)

Don't allow the db_name.tbl_name.col_name syntax.

MYSQLI_CLIENT_MULTI_QUERIES

Allows multiple semicolon-delimited queries in a single mysqli_query() call.

MYSQLI_STORE_RESULT (int)

For using buffered result sets. It has a value of 0.

MYSQLI_USE_RESULT (int)

For using unbuffered result sets. It has a value of 1.

MYSQLI_ASSOC (int)

Columns are returned into the array having the fieldname as the array index.

MYSQLI_NUM (int)

Columns are returned into the array having an enumerated index.

MYSQLI_BOTH (int)

Columns are returned into the array having both a numerical index and the fieldname as the associative index.

MYSQLI_NOT_NULL_FLAG (int)

Indicates that a field is defined as NOT NULL

MYSQLI_PRI_KEY_FLAG (int)

Field is part of a primary index

MYSQLI_UNIQUE_KEY_FLAG (int)

Field is part of a unique index.

MYSQLI_MULTIPLE_KEY_FLAG (int)

Field is part of an index.

MYSQLI_BLOB_FLAG (int)

Field is defined as BLOB

MYSQLI_UNSIGNED_FLAG (int)

Field is defined as UNSIGNED

MYSQLI_ZEROFILL_FLAG (int)

Field is defined as ZEROFILL

MYSQLI_AUTO_INCREMENT_FLAG (int)

Field is defined as AUTO_INCREMENT

MYSQLI_TIMESTAMP_FLAG (int)

Field is defined as TIMESTAMP

MYSQLI_SET_FLAG (int)

Field is defined as SET

MYSQLI_NUM_FLAG (int)

Field is defined as NUMERIC

MYSQLI_PART_KEY_FLAG (int)

Field is part of an multi-index

MYSQLI_GROUP_FLAG (int)

Field is part of GROUP BY

MYSQLI_TYPE_DECIMAL (int)

Field is defined as DECIMAL

MYSQLI_TYPE_NEWDECIMAL (int)

Precision math DECIMAL or NUMERIC field (MySQL 5.0.3 and up)

MYSQLI_TYPE_BIT (int)

Field is defined as BIT (MySQL 5.0.3 and up)

MYSQLI_TYPE_TINY (int)

Field is defined as TINYINT

MYSQLI_TYPE_SHORT (int)

Field is defined as SMALLINT

MYSQLI_TYPE_LONG (int)

Field is defined as INT

MYSQLI_TYPE_FLOAT (int)

Field is defined as FLOAT

MYSQLI_TYPE_DOUBLE (int)

Field is defined as DOUBLE

MYSQLI_TYPE_NULL (int)

Field is defined as DEFAULT NULL

MYSQLI_TYPE_TIMESTAMP (int)

Field is defined as TIMESTAMP

MYSQLI_TYPE_LONGLONG (int)

Field is defined as BIGINT

MYSQLI_TYPE_INT24 (int)

Field is defined as MEDIUMINT

MYSQLI_TYPE_DATE (int)

Field is defined as DATE

MYSQLI_TYPE_TIME (int)

Field is defined as TIME

MYSQLI_TYPE_DATETIME (int)

Field is defined as DATETIME

MYSQLI_TYPE_YEAR (int)

Field is defined as YEAR

MYSQLI_TYPE_NEWDATE (int)

Field is defined as DATE

MYSQLI_TYPE_INTERVAL (int)

Field is defined as INTERVAL

MYSQLI_TYPE_ENUM (int)

Field is defined as ENUM

MYSQLI_TYPE_SET (int)

Field is defined as SET

MYSQLI_TYPE_TINY_BLOB (int)

Field is defined as TINYBLOB

MYSQLI_TYPE_MEDIUM_BLOB (int)

Field is defined as MEDIUMBLOB

MYSQLI_TYPE_LONG_BLOB (int)

Field is defined as LONGBLOB

MYSQLI_TYPE_BLOB (int)

Field is defined as BLOB

MYSQLI_TYPE_VAR_STRING (int)

Field is defined as VARCHAR

MYSQLI_TYPE_STRING (int)

Field is defined as CHAR or BINARY

MYSQLI_TYPE_CHAR (int)

Field is defined as TINYINT. For CHAR, see MYSQLI_TYPE_STRING

MYSQLI_TYPE_GEOMETRY (int)

Field is defined as GEOMETRY

MYSQLI_TYPE_JSON (int)

Field is defined as JSON. Only valid for mysqlnd and MySQL 5.7.8 and up.

MYSQLI_NEED_DATA

More data available for bind variable

MYSQLI_NO_DATA (int)

No more data available for bind variable

MYSQLI_DATA_TRUNCATED (int)

Data truncation occurred. Available since MySQL 5.0.5.

MYSQLI_ENUM_FLAG (int)

Field is defined as ENUM.

MYSQLI_BINARY_FLAG (int)

Field is defined as BINARY.

MYSQLI_CURSOR_TYPE_FOR_UPDATE (int)

MYSQLI_CURSOR_TYPE_NO_CURSOR (int)

MYSQLI_CURSOR_TYPE_READ_ONLY (int)

MYSQLI_CURSOR_TYPE_SCROLLABLE (int)

MYSQLI_STMT_ATTR_CURSOR_TYPE (int)

MYSQLI_STMT_ATTR_PREFETCH_ROWS (int)

MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH (int)

MYSQLI_SET_CHARSET_NAME (int)

MYSQLI_REPORT_INDEX (int)

Report if no index or bad index was used in a query.

MYSQLI_REPORT_ERROR (int)

Report errors from mysqli function calls.

MYSQLI_REPORT_STRICT (int)

Throw a mysqli_sql_exception for errors instead of warnings.

MYSQLI_REPORT_ALL (int)

Set all options on (report all).

MYSQLI_REPORT_OFF (int)

Turns reporting off.

MYSQLI_DEBUG_TRACE_ENABLED (int)

Is set to 1 if mysqli_debug() functionality is enabled.

MYSQLI_SERVER_QUERY_NO_GOOD_INDEX_USED (int)

MYSQLI_SERVER_QUERY_NO_INDEX_USED (int)

MYSQLI_SERVER_PUBLIC_KEY (int)

MYSQLI_REFRESH_GRANT (int)

Refreshes the grant tables.

MYSQLI_REFRESH_LOG (int)

Flushes the logs, like executing the FLUSH LOGS SQL statement.

MYSQLI_REFRESH_TABLES (int)

Flushes the table cache, like executing the FLUSH TABLES SQL statement.

MYSQLI_REFRESH_HOSTS (int)

Flushes the host cache, like executing the FLUSH HOSTS SQL statement.

MYSQLI_REFRESH_REPLICA (int)

Alias of MYSQLI_REFRESH_SLAVE constant. Available as of PHP 8.1.0.

MYSQLI_REFRESH_STATUS (int)

Reset the status variables, like executing the FLUSH STATUS SQL statement.

MYSQLI_REFRESH_THREADS (int)

Flushes the thread cache.

MYSQLI_REFRESH_SLAVE (int)

On a slave replication server: resets the master server information, and restarts the slave. Like executing the RESET SLAVE SQL statement.

MYSQLI_REFRESH_MASTER (int)

On a master replication server: removes the binary log files listed in the binary log index, and truncates the index file. Like executing the RESET MASTER SQL statement.

MYSQLI_TRANS_COR_AND_CHAIN (int)

Appends "AND CHAIN" to mysqli_commit() or mysqli_rollback().

MYSQLI_TRANS_COR_AND_NO_CHAIN (int)

Appends "AND NO CHAIN" to mysqli_commit() or mysqli_rollback().

MYSQLI_TRANS_COR_RELEASE (int)

Appends "RELEASE" to mysqli_commit() or mysqli_rollback().

MYSQLI_TRANS_COR_NO_RELEASE (int)

Appends "NO RELEASE" to mysqli_commit() or mysqli_rollback().

MYSQLI_TRANS_START_READ_ONLY (int)

Start the transaction as "START TRANSACTION READ ONLY" with mysqli_begin_transaction().

MYSQLI_TRANS_START_READ_WRITE (int)

Start the transaction as "START TRANSACTION READ WRITE" with mysqli_begin_transaction().

MYSQLI_TRANS_START_CONSISTENT_SNAPSHOT

Start the transaction as "START TRANSACTION WITH CONSISTENT SNAPSHOT" with mysqli_begin_transaction().

MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT (int)

Requires MySQL 5.6.5 and up.

MYSQLI_IS_MARIADB (bool)

Whether the mysqli extension has been built against a MariaDB client library. Available as of PHP 8.1.2.

add a note add a note

User Contributed Notes 2 notes

up
-2
Anonymous
16 years ago
MYSQLI_TYPE_SHORT is used for SMALLINT, not INT
up
-6
jeriba4 at googlemail dot com
11 years ago
Note that although CHAR is an explicite string type within MySQL,
MYSQLI_TYPE_CHAR is interpreted the same way as MYSQLI_TYPE_TINY, which is the TINYINT numeric type within MySQL.
As a consequence, you cannot distinguish these two column types by using their respective type index, as both are set to integer one (1).
To Top