Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

mysqlnd_qc_set_cache_condition(3) [php man page]

MYSQLND_QC_SET_CACHE_CONDITION(3)					 1					 MYSQLND_QC_SET_CACHE_CONDITION(3)

mysqlnd_qc_set_cache_condition - Set conditions for automatic caching

SYNOPSIS
bool mysqlnd_qc_set_cache_condition (int $condition_type, mixed $condition, mixed $condition_option) DESCRIPTION
Sets a condition for automatic caching of statements which do not contain the necessary SQL hints to enable caching of them. PARAMETERS
o $condition_type - Type of the condition. The only allowed value is MYSQLND_QC_CONDITION_META_SCHEMA_PATTERN. o $condition - Parameter for the condition set with condition_type. Parameter type and structure depend on condition_type If condition_type equals MYSQLND_QC_CONDITION_META_SCHEMA_PATTERN condition must be a string. The string sets a pattern. Statements are cached if table and database meta data entry of their result sets match the pattern. The pattern is checked for a match with the db and org_table meta data entries provided by the underlying MySQL client server library. Please, check the MySQL Reference manual for details about the two entries. The db and org_table values are concatenated with a dot ( .) before matched against condition. Pat- tern matching supports the wildcards % and _. The wildcard % will match one or many arbitrary characters. _ will match one arbi- trary character. The escape symbol is backslash. o $condition_option - Option for condition. Type and structure depend on condition_type. If condition_type equals MYSQLND_QC_CONDI- TION_META_SCHEMA_PATTERN condition_options is the TTL to be used. EXAMPLES
Example #1 mysqlnd_qc_set_cache_condition(3) example <?php /* Cache all accesses to tables with the name "new%" in schema/database "db_example" for 1 second */ if (!mysqlnd_qc_set_cache_condition(MYSQLND_QC_CONDITION_META_SCHEMA_PATTERN, "db_example.new%", 1)) { die("Failed to set cache condition!"); } $mysqli = new mysqli("host", "user", "password", "db_example", "port"); /* cached although no SQL hint given */ $mysqli->query("SELECT id, title FROM news"); $pdo_mysql = new PDO("mysql:host=host;dbname=db_example;port=port", "user", "password"); /* not cached: no SQL hint, no pattern match */ $pdo_mysql->query("SELECT id, title FROM latest_news"); /* cached: TTL 1 second, pattern match */ $pdo_mysql->query("SELECT id, title FROM news"); ?> RETURN VALUES
Returns TRUE on success or FALSE on FAILURE. SEE ALSO
Quickstart: pattern based caching. PHP Documentation Group MYSQLND_QC_SET_CACHE_CONDITION(3)

Check Out this Related Man Page

MYSQLND_UH_CONVERT_TO_MYSQLND(3)					 1					  MYSQLND_UH_CONVERT_TO_MYSQLND(3)

mysqlnd_uh_convert_to_mysqlnd - Converts a MySQL connection handle into a mysqlnd connection handle

SYNOPSIS
resource mysqlnd_uh_convert_to_mysqlnd (mysqli &$mysql_connection) DESCRIPTION
Converts a MySQL connection handle into a mysqlnd connection handle. After conversion you can execute mysqlnd library calls on the connec- tion handle. This can be used to access mysqlnd functionality not made available through user space API calls. The function can be disabled with mysqlnd_uh.enable. If mysqlnd_uh.enable is set to FALSE the function will not install the proxy and always return TRUE. Additionally, an error of the type E_WARNING may be emitted. The error message may read like PHP Warning: mysqlnd_uh_convert_to_mysqlnd(): (Mysqlnd User Handler) The plugin has been disabled by setting the configuration parameter mysqlnd_uh.enable = false. You are not allowed to call this function [...]. PARAMETERS
o $MySQL connection handle - A MySQL connection handle of type mysql, mysqli or PDO_MySQL. RETURN VALUES
A mysqlnd connection handle. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.4.0 | | | | | | | The $mysql_connection parameter can now be of | | | type mysql, PDO_MySQL, or mysqli. Before, only | | | the mysqli type was allowed. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 mysqlnd_uh_convert_to_mysqlnd(3) example <?php /* PDO user API gives no access to connection thread id */ $mysql_connection = new PDO("mysql:host=localhost;dbname=test", "root", ""); /* Convert PDO MySQL handle to mysqlnd handle */ $mysqlnd = mysqlnd_uh_convert_to_mysqlnd($mysql_connection); /* Create Proxy to call mysqlnd connection class methods */ $obj = new MySQLndUHConnection(); /* Call mysqlnd_conn::get_thread_id */ var_dump($obj->getThreadId($mysqlnd)); /* Use SQL to fetch connection thread id */ var_dump($mysql_connection->query("SELECT CONNECTION_ID()")->fetchAll()); ?> The above example will output: int(27054) array(1) { [0]=> array(2) { ["CONNECTION_ID()"]=> string(5) "27054" [0]=> string(5) "27054" } } SEE ALSO
mysqlnd_uh.enable. PHP Documentation Group MYSQLND_UH_CONVERT_TO_MYSQLND(3)
Man Page