MysqlndUhConnection::setServerOption
(PECL mysqlnd-uh >= 1.0.0-alpha)
MysqlndUhConnection::setServerOption — Sets a server option
説明
public MysqlndUhConnection::setServerOption
( mysqlnd_connection
$connection
, int $option
) : voidSets a server option.
パラメータ
-
connection -
Mysqlnd connection handle. Do not modify!
-
option -
The option to be set.
返り値
Returns TRUE on success.
Otherwise, returns FALSE
例
例1 MysqlndUhConnection::setServerOption() example
<?php
function server_option_to_string($option) {
$ret = 'unknown';
switch ($option) {
case MYSQLND_UH_SERVER_OPTION_MULTI_STATEMENTS_ON:
$ret = 'MYSQLND_UH_SERVER_OPTION_MULTI_STATEMENTS_ON';
break;
case MYSQLND_UH_SERVER_OPTION_MULTI_STATEMENTS_OFF:
$ret = 'MYSQLND_UH_SERVER_OPTION_MULTI_STATEMENTS_ON';
break;
}
return $ret;
}
class proxy extends MysqlndUhConnection {
public function setServerOption($res, $option) {
printf("%s(%s)\n", __METHOD__, var_export(func_get_args(), true));
printf("Option '%s' set\n", server_option_to_string($option));
$ret = parent::setServerOption($res, $option);
printf("%s returns %s\n", __METHOD__, var_export($ret, true));
return $ret;
}
}
mysqlnd_uh_set_connection_proxy(new proxy());
$mysqli = new mysqli("localhost", "root", "", "test");
$mysqli->multi_query("SELECT 1; SELECT 2");
?>
上の例の出力は以下となります。
proxy::setServerOption(array ( 0 => NULL, 1 => 0, )) Option 'MYSQLND_UH_SERVER_OPTION_MULTI_STATEMENTS_ON' set proxy::setServerOption returns true
参考
- mysqlnd_uh_set_connection_proxy() - Installs a proxy for mysqlnd connections
- mysqli_real_connect() - mysql サーバーとの接続をオープンする
- mysqli_options() - オプションを設定する
- mysqli_multi_query() - データベース上でクエリを実行する