本文整理匯總了PHP中phpbb\db\driver\driver_interface::cast_expr_to_string方法的典型用法代碼示例。如果您正苦於以下問題:PHP driver_interface::cast_expr_to_string方法的具體用法?PHP driver_interface::cast_expr_to_string怎麽用?PHP driver_interface::cast_expr_to_string使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類phpbb\db\driver\driver_interface
的用法示例。
在下文中一共展示了driver_interface::cast_expr_to_string方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: increment
/**
* Increments an integer config value directly in the database.
*
* Using this method instead of setting the new value directly avoids race
* conditions and unlike set_atomic it cannot fail.
*
* @param string $key The configuration option's name
* @param int $increment Amount to increment by
* @param bool $use_cache Whether this variable should be cached or if it
* changes too frequently to be efficiently cached.
*/
function increment($key, $increment, $use_cache = true)
{
if (!isset($this->config[$key])) {
$this->set($key, '0', $use_cache);
}
$sql_update = $this->db->cast_expr_to_string($this->db->cast_expr_to_bigint('config_value') . ' + ' . (int) $increment);
$this->db->sql_query('UPDATE ' . $this->table . '
SET config_value = ' . $sql_update . "\n\t\t\tWHERE config_name = '" . $this->db->sql_escape($key) . "'");
if ($use_cache) {
$this->cache->destroy('config');
}
$this->config[$key] += $increment;
}