MysqlndUhConnection::setClientOption
(PECL mysqlnd-uh >= 1.0.0-alpha)
MysqlndUhConnection::setClientOption — Sets a client option
Description
public bool MysqlndUhConnection::setClientOption
( mysqlnd_connection
$connection
, int $option
, int $value
)Sets a client option.
Parameters
-
connection
-
Mysqlnd connection handle. Do not modify!
-
option
-
The option to be set.
-
value
-
Optional option value, if required.
Return Values
Returns TRUE
on success.
Otherwise, returns FALSE
Examples
Example #1 MysqlndUhConnection::setClientOption() example
<?php
function client_option_to_string($option) {
static $mapping = array(
MYSQLND_UH_MYSQLND_OPTION_OPT_CONNECT_TIMEOUT => "MYSQLND_UH_MYSQLND_OPTION_OPT_CONNECT_TIMEOUT",
MYSQLND_UH_MYSQLND_OPTION_OPT_COMPRESS => "MYSQLND_UH_MYSQLND_OPTION_OPT_COMPRESS",
MYSQLND_UH_MYSQLND_OPTION_OPT_NAMED_PIPE => "MYSQLND_UH_MYSQLND_OPTION_OPT_NAMED_PIPE",
MYSQLND_UH_MYSQLND_OPTION_INIT_COMMAND => "MYSQLND_UH_MYSQLND_OPTION_INIT_COMMAND",
MYSQLND_UH_MYSQLND_READ_DEFAULT_FILE => "MYSQLND_UH_MYSQLND_READ_DEFAULT_FILE",
MYSQLND_UH_MYSQLND_READ_DEFAULT_GROUP => "MYSQLND_UH_MYSQLND_READ_DEFAULT_GROUP",
MYSQLND_UH_MYSQLND_SET_CHARSET_DIR => "MYSQLND_UH_MYSQLND_SET_CHARSET_DIR",
MYSQLND_UH_MYSQLND_SET_CHARSET_NAME => "MYSQLND_UH_MYSQLND_SET_CHARSET_NAME",
MYSQLND_UH_MYSQLND_OPT_LOCAL_INFILE => "MYSQLND_UH_MYSQLND_OPT_LOCAL_INFILE",
MYSQLND_UH_MYSQLND_OPT_PROTOCOL => "MYSQLND_UH_MYSQLND_OPT_PROTOCOL",
MYSQLND_UH_MYSQLND_SHARED_MEMORY_BASE_NAME => "MYSQLND_UH_MYSQLND_SHARED_MEMORY_BASE_NAME",
MYSQLND_UH_MYSQLND_OPT_READ_TIMEOUT => "MYSQLND_UH_MYSQLND_OPT_READ_TIMEOUT",
MYSQLND_UH_MYSQLND_OPT_WRITE_TIMEOUT => "MYSQLND_UH_MYSQLND_OPT_WRITE_TIMEOUT",
MYSQLND_UH_MYSQLND_OPT_USE_RESULT => "MYSQLND_UH_MYSQLND_OPT_USE_RESULT",
MYSQLND_UH_MYSQLND_OPT_USE_REMOTE_CONNECTION => "MYSQLND_UH_MYSQLND_OPT_USE_REMOTE_CONNECTION",
MYSQLND_UH_MYSQLND_OPT_USE_EMBEDDED_CONNECTION => "MYSQLND_UH_MYSQLND_OPT_USE_EMBEDDED_CONNECTION",
MYSQLND_UH_MYSQLND_OPT_GUESS_CONNECTION => "MYSQLND_UH_MYSQLND_OPT_GUESS_CONNECTION",
MYSQLND_UH_MYSQLND_SET_CLIENT_IP => "MYSQLND_UH_MYSQLND_SET_CLIENT_IP",
MYSQLND_UH_MYSQLND_SECURE_AUTH => "MYSQLND_UH_MYSQLND_SECURE_AUTH",
MYSQLND_UH_MYSQLND_REPORT_DATA_TRUNCATION => "MYSQLND_UH_MYSQLND_REPORT_DATA_TRUNCATION",
MYSQLND_UH_MYSQLND_OPT_RECONNECT => "MYSQLND_UH_MYSQLND_OPT_RECONNECT",
MYSQLND_UH_MYSQLND_OPT_SSL_VERIFY_SERVER_CERT => "MYSQLND_UH_MYSQLND_OPT_SSL_VERIFY_SERVER_CERT",
MYSQLND_UH_MYSQLND_OPT_NET_CMD_BUFFER_SIZE => "MYSQLND_UH_MYSQLND_OPT_NET_CMD_BUFFER_SIZE",
MYSQLND_UH_MYSQLND_OPT_NET_READ_BUFFER_SIZE => "MYSQLND_UH_MYSQLND_OPT_NET_READ_BUFFER_SIZE",
MYSQLND_UH_MYSQLND_OPT_SSL_KEY => "MYSQLND_UH_MYSQLND_OPT_SSL_KEY",
MYSQLND_UH_MYSQLND_OPT_SSL_CERT => "MYSQLND_UH_MYSQLND_OPT_SSL_CERT",
MYSQLND_UH_MYSQLND_OPT_SSL_CA => "MYSQLND_UH_MYSQLND_OPT_SSL_CA",
MYSQLND_UH_MYSQLND_OPT_SSL_CAPATH => "MYSQLND_UH_MYSQLND_OPT_SSL_CAPATH",
MYSQLND_UH_MYSQLND_OPT_SSL_CIPHER => "MYSQLND_UH_MYSQLND_OPT_SSL_CIPHER",
MYSQLND_UH_MYSQLND_OPT_SSL_PASSPHRASE => "MYSQLND_UH_MYSQLND_OPT_SSL_PASSPHRASE",
MYSQLND_UH_SERVER_OPTION_PLUGIN_DIR => "MYSQLND_UH_SERVER_OPTION_PLUGIN_DIR",
MYSQLND_UH_SERVER_OPTION_DEFAULT_AUTH => "MYSQLND_UH_SERVER_OPTION_DEFAULT_AUTH",
MYSQLND_UH_SERVER_OPTION_SET_CLIENT_IP => "MYSQLND_UH_SERVER_OPTION_SET_CLIENT_IP"
);
if (version_compare(PHP_VERSION, '5.3.99-dev', '>')) {
$mapping[MYSQLND_UH_MYSQLND_OPT_MAX_ALLOWED_PACKET] = "MYSQLND_UH_MYSQLND_OPT_MAX_ALLOWED_PACKET";
$mapping[MYSQLND_UH_MYSQLND_OPT_AUTH_PROTOCOL] = "MYSQLND_UH_MYSQLND_OPT_AUTH_PROTOCOL";
}
if (defined("MYSQLND_UH_MYSQLND_OPT_INT_AND_FLOAT_NATIVE")) {
/* special mysqlnd build */
$mapping["MYSQLND_UH_MYSQLND_OPT_INT_AND_FLOAT_NATIVE"] = "MYSQLND_UH_MYSQLND_OPT_INT_AND_FLOAT_NATIVE";
}
return (isset($mapping[$option])) ? $mapping[$option] : 'unknown';
}
class proxy extends MysqlndUhConnection {
public function setClientOption($res, $option, $value) {
printf("%s(%s)\n", __METHOD__, var_export(func_get_args(), true));
printf("Option '%s' set to %s\n", client_option_to_string($option), var_export($value, true));
$ret = parent::setClientOption($res, $option, $value);
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");
?>
The above example will output:
proxy::setClientOption(array ( 0 => NULL, 1 => 210, 2 => 3221225472, )) Option 'MYSQLND_UH_MYSQLND_OPT_MAX_ALLOWED_PACKET' set to 3221225472 proxy::setClientOption returns true proxy::setClientOption(array ( 0 => NULL, 1 => 211, 2 => 'mysql_native_password', )) Option 'MYSQLND_UH_MYSQLND_OPT_AUTH_PROTOCOL' set to 'mysql_native_password' proxy::setClientOption returns true proxy::setClientOption(array ( 0 => NULL, 1 => 8, 2 => 1, )) Option 'MYSQLND_UH_MYSQLND_OPT_LOCAL_INFILE' set to 1 proxy::setClientOption returns true
See Also
- mysqlnd_uh_set_connection_proxy() - Installs a proxy for mysqlnd connections
- mysqli_real_connect() - Opens a connection to a mysql server
- mysqli_options() - Set options
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- MySQL Drivers and Plugins
- Mysqlnd user handler plugin
- Функция MysqlndUhConnection::changeUser() - Changes the user of the specified mysqlnd database connection
- Функция MysqlndUhConnection::charsetName() - Returns the default character set for the database connection
- Функция MysqlndUhConnection::close() - Closes a previously opened database connection
- Функция MysqlndUhConnection::connect() - Open a new connection to the MySQL server
- Функция MysqlndUhConnection::__construct() - The __construct purpose
- Функция MysqlndUhConnection::endPSession() - End a persistent connection
- MysqlndUhConnection::escapeString
- Функция MysqlndUhConnection::getAffectedRows() - Gets the number of affected rows in a previous MySQL operation
- Функция MysqlndUhConnection::getErrorNumber() - Returns the error code for the most recent function call
- Функция MysqlndUhConnection::getErrorString() - Returns a string description of the last error
- Функция MysqlndUhConnection::getFieldCount() - Returns the number of columns for the most recent query
- Функция MysqlndUhConnection::getHostInformation() - Returns a string representing the type of connection used
- Функция MysqlndUhConnection::getLastInsertId() - Returns the auto generated id used in the last query.
- Функция MysqlndUhConnection::getLastMessage() - Retrieves information about the most recently executed query
- Функция MysqlndUhConnection::getProtocolInformation() - Returns the version of the MySQL protocol used
- Функция MysqlndUhConnection::getServerInformation() - Returns the version of the MySQL server
- Функция MysqlndUhConnection::getServerStatistics() - Gets the current system status
- Функция MysqlndUhConnection::getServerVersion() - Returns the version of the MySQL server as an integer
- Функция MysqlndUhConnection::getSqlstate() - Returns the SQLSTATE error from previous MySQL operation
- Функция MysqlndUhConnection::getStatistics() - Returns statistics about the client connection.
- Функция MysqlndUhConnection::getThreadId() - Returns the thread ID for the current connection
- Функция MysqlndUhConnection::getWarningCount() - Returns the number of warnings from the last query for the given link
- Функция MysqlndUhConnection::init() - Initialize mysqlnd connection
- Функция MysqlndUhConnection::killConnection() - Asks the server to kill a MySQL thread
- Функция MysqlndUhConnection::listFields() - List MySQL table fields
- Функция MysqlndUhConnection::listMethod() - Wrapper for assorted list commands
- Функция MysqlndUhConnection::moreResults() - Check if there are any more query results from a multi query
- Функция MysqlndUhConnection::nextResult() - Prepare next result from multi_query
- Функция MysqlndUhConnection::ping() - Pings a server connection, or tries to reconnect if the connection has gone down
- Функция MysqlndUhConnection::query() - Performs a query on the database
- Функция MysqlndUhConnection::queryReadResultsetHeader() - Read a result set header
- Функция MysqlndUhConnection::reapQuery() - Get result from async query
- Функция MysqlndUhConnection::refreshServer() - Flush or reset tables and caches
- Функция MysqlndUhConnection::restartPSession() - Restart a persistent mysqlnd connection
- Функция MysqlndUhConnection::selectDb() - Selects the default database for database queries
- Функция MysqlndUhConnection::sendClose() - Sends a close command to MySQL
- Функция MysqlndUhConnection::sendQuery() - Sends a query to MySQL
- Функция MysqlndUhConnection::serverDumpDebugInformation() - Dump debugging information into the log for the MySQL server
- Функция MysqlndUhConnection::setAutocommit() - Turns on or off auto-committing database modifications
- Функция MysqlndUhConnection::setCharset() - Sets the default client character set
- Функция MysqlndUhConnection::setClientOption() - Sets a client option
- Функция MysqlndUhConnection::setServerOption() - Sets a server option
- Функция MysqlndUhConnection::shutdownServer() - The shutdownServer purpose
- Функция MysqlndUhConnection::simpleCommand() - Sends a basic COM_* command
- Функция MysqlndUhConnection::simpleCommandHandleResponse() - Process a response for a basic COM_* command send to the client
- Функция MysqlndUhConnection::sslSet() - Used for establishing secure connections using SSL
- Функция MysqlndUhConnection::stmtInit() - Initializes a statement and returns a resource for use with mysqli_statement::prepare
- Функция MysqlndUhConnection::storeResult() - Transfers a result set from the last query
- Функция MysqlndUhConnection::txCommit() - Commits the current transaction
- Функция MysqlndUhConnection::txRollback() - Rolls back current transaction
- Функция MysqlndUhConnection::useResult() - Initiate a result set retrieval
Коментарии
404 Not Found