mysqli::options

mysqli_options

(PHP 5, PHP 7, PHP 8)

mysqli::options -- mysqli_options设置选项

说明

面向对象风格

mysqli::options(int $option, mixed $value): bool

过程化风格

mysqli_options(mysqli $link, int $option, mixed $value): bool

设置一个连接的扩展选项,这些选项可以改变这个连接的行为。

如果要对多个选项进行设置,可以多次调用此函数来。

mysqli_options() 需要在 mysqli_init() 函数之后、 mysqli_real_connect() 函数之前被调用。

参数

mysql

仅以过程化样式:由mysqli_connect()mysqli_init() 返回的 mysqli 对象。

option

要进行设置的选项,可以是下列中的某一项:

有效的选项
名称 描述
MYSQLI_OPT_CONNECT_TIMEOUT 连接超时设置,以秒为单位(在 Windows 平台上,PHP 5.3.1 之后才支持此选项)。
MYSQLI_OPT_LOCAL_INFILE 启用或禁用 LOAD LOCAL INFILE 语句
MYSQLI_INIT_COMMAND 成功建立 MySQL 连接之后要执行的 SQL 语句
MYSQLI_READ_DEFAULT_FILE 从指定的文件中读取选项,而不是使用 my.cnf 中的选项
MYSQLI_READ_DEFAULT_GROUP my.cnf 或者 MYSQL_READ_DEFAULT_FILE 指定的文件中 读取指定的组中的选项。
MYSQLI_SERVER_PUBLIC_KEY SHA-256 认证模式下,要使用的 RSA 公钥文件。
MYSQLI_OPT_NET_CMD_BUFFER_SIZE 内部命令/网络缓冲大小, 仅在 mysqlnd 驱动下有效。
MYSQLI_OPT_NET_READ_BUFFER_SIZE 以字节为单位,读取 MySQL 命令报文时候的块大小, 仅在 mysqlnd 驱动下有效。
MYSQLI_OPT_INT_AND_FLOAT_NATIVE 将整数和浮点数类型的列转换成 PHP 的数值类型, 仅在 mysqlnd 驱动下有效。
MYSQLI_OPT_SSL_VERIFY_SERVER_CERT

value

选项值。

返回值

成功时返回 true, 或者在失败时返回 false

更新日志

版本 说明
5.5.0 新增 MYSQLI_SERVER_PUBLIC_KEYMYSQLI_SERVER_PUBLIC_KEY 选项。
5.3.0 新增 MYSQLI_OPT_INT_AND_FLOAT_NATIVEMYSQLI_OPT_NET_CMD_BUFFER_SIZEMYSQLI_OPT_NET_READ_BUFFER_SIZEMYSQLI_OPT_SSL_VERIFY_SERVER_CERT 选项。

范例

参见 mysqli_real_connect()

注释

注意:

MySQLnd 总是使用服务器的默认字符集。此字符集在连接握手/认证时发送,并被 mysqlnd 使用。

Libmysqlclient 使用 my.cnf 中的默认字符集或者由在调用 mysqli_init() 之后,mysqli_real_connect() 之前先调用 mysqli_options() 来指定。

参见

  • mysqli_init() - 初始化 MySQLi 并返回一个资源类型的值,这个值可以作为 mysqli_real_connect() 函数的传入参数
  • mysqli_real_connect() - 建立一个 MySQL 服务器连接