Support for xcache
This commit is contained in:
		
					parent
					
						
							
								51bf7f7d17
							
						
					
				
			
			
				commit
				
					
						9afe5c8670
					
				
			
		
					 1 changed files with 47 additions and 13 deletions
				
			
		| 
						 | 
				
			
			@ -66,12 +66,22 @@ function get_config($family, $key, $instore = false) {
 | 
			
		|||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If APC is enabled then fetch the data from there
 | 
			
		||||
	// If APC is enabled then fetch the data from there, else try XCache
 | 
			
		||||
	if (function_exists("apc_fetch") AND function_exists("apc_exists"))
 | 
			
		||||
		if (apc_exists($family."|".$key)) {
 | 
			
		||||
			$val = apc_fetch($family."|".$key);
 | 
			
		||||
			$a->config[$family][$key] = $val;
 | 
			
		||||
 | 
			
		||||
			if ($val === '!<unset>!')
 | 
			
		||||
				return false;
 | 
			
		||||
			else
 | 
			
		||||
				return $val;
 | 
			
		||||
		}
 | 
			
		||||
	elseif (function_exists("xcache_fetch") AND function_exists("xcache_isset"))
 | 
			
		||||
		if (xcache_isset($family."|".$key)) {
 | 
			
		||||
			$val = xcache_fetch($family."|".$key);
 | 
			
		||||
			$a->config[$family][$key] = $val;
 | 
			
		||||
 | 
			
		||||
			if ($val === '!<unset>!')
 | 
			
		||||
				return false;
 | 
			
		||||
			else
 | 
			
		||||
| 
						 | 
				
			
			@ -87,18 +97,22 @@ function get_config($family, $key, $instore = false) {
 | 
			
		|||
		$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
 | 
			
		||||
		$a->config[$family][$key] = $val;
 | 
			
		||||
 | 
			
		||||
		// If APC is enabled then store the data there
 | 
			
		||||
		// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
		if (function_exists("apc_store"))
 | 
			
		||||
			apc_store($family."|".$key, $val, 600);
 | 
			
		||||
		elseif (function_exists("xcache_set"))
 | 
			
		||||
			xcache_set($family."|".$key, $val, 600);
 | 
			
		||||
 | 
			
		||||
		return $val;
 | 
			
		||||
	}
 | 
			
		||||
	else {
 | 
			
		||||
		$a->config[$family][$key] = '!<unset>!';
 | 
			
		||||
 | 
			
		||||
		// If APC is enabled then store the data there
 | 
			
		||||
		// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
		if (function_exists("apc_store"))
 | 
			
		||||
			apc_store($family."|".$key, '!<unset>!', 600);
 | 
			
		||||
		elseif (function_exists("xcache_set"))
 | 
			
		||||
			xcache_set($family."|".$key, '!<unset>!', 600);
 | 
			
		||||
	}
 | 
			
		||||
	return false;
 | 
			
		||||
}}
 | 
			
		||||
| 
						 | 
				
			
			@ -134,7 +148,7 @@ function set_config($family,$key,$value) {
 | 
			
		|||
		return $ret;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	$ret = q("UPDATE `config` SET `v` = '%s' WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
 | 
			
		||||
	$ret = q("UPDATE `config` SET `v` = '%s' WHERE `cat` = '%s' AND `k` = '%s'",
 | 
			
		||||
		dbesc($dbvalue),
 | 
			
		||||
		dbesc($family),
 | 
			
		||||
		dbesc($key)
 | 
			
		||||
| 
						 | 
				
			
			@ -142,9 +156,11 @@ function set_config($family,$key,$value) {
 | 
			
		|||
 | 
			
		||||
	$a->config[$family][$key] = $value;
 | 
			
		||||
 | 
			
		||||
	// If APC is enabled then store the data there
 | 
			
		||||
	// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
	if (function_exists("apc_store"))
 | 
			
		||||
		apc_store($family."|".$key, $value, 600);
 | 
			
		||||
	elseif (function_exists("xcache_set"))
 | 
			
		||||
		xcache_set($family."|".$key, $value, 600);
 | 
			
		||||
 | 
			
		||||
	if($ret)
 | 
			
		||||
		return $value;
 | 
			
		||||
| 
						 | 
				
			
			@ -193,7 +209,7 @@ function get_pconfig($uid,$family, $key, $instore = false) {
 | 
			
		|||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If APC is enabled then fetch the data from there
 | 
			
		||||
	// If APC is enabled then fetch the data from there, else try XCache
 | 
			
		||||
	if (function_exists("apc_fetch") AND function_exists("apc_exists"))
 | 
			
		||||
		if (apc_exists($uid."|".$family."|".$key)) {
 | 
			
		||||
			$val = apc_fetch($uid."|".$family."|".$key);
 | 
			
		||||
| 
						 | 
				
			
			@ -204,6 +220,16 @@ function get_pconfig($uid,$family, $key, $instore = false) {
 | 
			
		|||
			else
 | 
			
		||||
				return $val;
 | 
			
		||||
		}
 | 
			
		||||
	elseif (function_exists("xcache_get") AND function_exists("xcache_isset"))
 | 
			
		||||
		if (xcache_isset($uid."|".$family."|".$key)) {
 | 
			
		||||
			$val = xcache_get($uid."|".$family."|".$key);
 | 
			
		||||
			$a->config[$uid][$family][$key] = $val;
 | 
			
		||||
 | 
			
		||||
			if ($val === '!<unset>!')
 | 
			
		||||
				return false;
 | 
			
		||||
			else
 | 
			
		||||
				return $val;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	$ret = q("SELECT `v` FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
 | 
			
		||||
| 
						 | 
				
			
			@ -216,18 +242,22 @@ function get_pconfig($uid,$family, $key, $instore = false) {
 | 
			
		|||
		$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
 | 
			
		||||
		$a->config[$uid][$family][$key] = $val;
 | 
			
		||||
 | 
			
		||||
		// If APC is enabled then store the data there
 | 
			
		||||
		// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
		if (function_exists("apc_store"))
 | 
			
		||||
			apc_store($uid."|".$family."|".$key, $val, 600);
 | 
			
		||||
		elseif (function_exists("xcache_set"))
 | 
			
		||||
			xcache_set($uid."|".$family."|".$key, $val, 600);
 | 
			
		||||
 | 
			
		||||
		return $val;
 | 
			
		||||
	}
 | 
			
		||||
	else {
 | 
			
		||||
		$a->config[$uid][$family][$key] = '!<unset>!';
 | 
			
		||||
 | 
			
		||||
		// If APC is enabled then store the data there
 | 
			
		||||
		// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
		if (function_exists("apc_store"))
 | 
			
		||||
			apc_store($uid."|".$family."|".$key, '!<unset>!', 600);
 | 
			
		||||
		elseif (function_exists("xcache_set"))
 | 
			
		||||
			xcache_set($uid."|".$family."|".$key, '!<unset>!', 600);
 | 
			
		||||
	}
 | 
			
		||||
	return false;
 | 
			
		||||
}}
 | 
			
		||||
| 
						 | 
				
			
			@ -238,13 +268,15 @@ function del_config($family,$key) {
 | 
			
		|||
	global $a;
 | 
			
		||||
	if(x($a->config[$family],$key))
 | 
			
		||||
		unset($a->config[$family][$key]);
 | 
			
		||||
	$ret = q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
 | 
			
		||||
	$ret = q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s'",
 | 
			
		||||
		dbesc($family),
 | 
			
		||||
		dbesc($key)
 | 
			
		||||
	);
 | 
			
		||||
	// If APC is enabled then store the data there
 | 
			
		||||
	// If APC is enabled then delete the data from there, else try XCache
 | 
			
		||||
	if (function_exists("apc_delete"))
 | 
			
		||||
		apc_delete($family."|".$key);
 | 
			
		||||
	elseif (function_exists("xcache_unset"))
 | 
			
		||||
		xcache_unset($family."|".$key);
 | 
			
		||||
 | 
			
		||||
	return $ret;
 | 
			
		||||
}}
 | 
			
		||||
| 
						 | 
				
			
			@ -274,7 +306,7 @@ function set_pconfig($uid,$family,$key,$value) {
 | 
			
		|||
			return $value;
 | 
			
		||||
		return $ret;
 | 
			
		||||
	}
 | 
			
		||||
	$ret = q("UPDATE `pconfig` SET `v` = '%s' WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
 | 
			
		||||
	$ret = q("UPDATE `pconfig` SET `v` = '%s' WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s'",
 | 
			
		||||
		dbesc($dbvalue),
 | 
			
		||||
		intval($uid),
 | 
			
		||||
		dbesc($family),
 | 
			
		||||
| 
						 | 
				
			
			@ -283,9 +315,11 @@ function set_pconfig($uid,$family,$key,$value) {
 | 
			
		|||
 | 
			
		||||
	$a->config[$uid][$family][$key] = $value;
 | 
			
		||||
 | 
			
		||||
	// If APC is enabled then store the data there
 | 
			
		||||
	// If APC is enabled then store the data there, else try XCache
 | 
			
		||||
	if (function_exists("apc_store"))
 | 
			
		||||
		apc_store($uid."|".$family."|".$key, $value, 600);
 | 
			
		||||
	elseif (function_exists("xcache_set"))
 | 
			
		||||
		xcache_set($uid."|".$family."|".$key, $value, 600);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	if($ret)
 | 
			
		||||
| 
						 | 
				
			
			@ -299,7 +333,7 @@ function del_pconfig($uid,$family,$key) {
 | 
			
		|||
	global $a;
 | 
			
		||||
	if(x($a->config[$uid][$family],$key))
 | 
			
		||||
		unset($a->config[$uid][$family][$key]);
 | 
			
		||||
	$ret = q("DELETE FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
 | 
			
		||||
	$ret = q("DELETE FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s'",
 | 
			
		||||
		intval($uid),
 | 
			
		||||
		dbesc($family),
 | 
			
		||||
		dbesc($key)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue