李迎辉 2009年08月04日 星期二 09:51 | 1229次浏览 | 2条评论
在drupal中有关于变量设置的,是通过variable_get()和variable_set()来实现的。具体的体码是在includes/bootstrap.inc中。这个东西很有意思。variable_get()是从$conf中得到的,它是一个全局的对象,这个没什么。但是看variable_set()的实现,代码如下:
function variable_set($name, $value) {
global $conf;
$serialized_value = serialize($value);
db_query("UPDATE {variable} SET value = '%s' WHERE name = '%s'", $serialized_value, $name);
if (!db_affected_rows()) {
@db_query("INSERT INTO {variable} (name, value) VALUES ('%s', '%s')", $name, $serialized_value);
}
cache_clear_all('variables', 'cache');
$conf[$name] = $value;
}
Zeuux © 2024
京ICP备05028076号
回复 周琦 2009年08月20日 星期四 22:23
这是一个