本文整理汇总了PHP中Memcache::GetObjectKey方法的典型用法代码示例。如果您正苦于以下问题:PHP Memcache::GetObjectKey方法的具体用法?PHP Memcache::GetObjectKey怎么用?PHP Memcache::GetObjectKey使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Memcache
的用法示例。
在下文中一共展示了Memcache::GetObjectKey方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Fetch
/**
* fetch db result
*
* @param object $db 指定DB Instance
* @return array()
*/
public static function Fetch($n = null, $ids = array(), $k = 'id', $db = null)
{
if (empty($ids)) {
return array();
}
$single = is_array($ids) ? false : true;
DB::CheckArray($ids);
$ids = array_values($ids);
$key = Memcache::GetObjectKey($n, $ids, $k);
/*
$memcache = Memcache::Instance();
$cache_key = array_values($key);
$values = (!self::$mDebug && 'id'===$k)
? $memcache->Get( $cache_key )
: array();
*/
$values = array();
$n_fetch_ids = array();
$y_fetch_record = array();
foreach ($key as $id => $c_key) {
if (false == isset($values[$c_key])) {
$n_fetch_ids[] = $id;
} else {
$y_fetch_record[$id] = $values[$c_key];
}
}
$result = $y_fetch_record;
if (false == empty($n_fetch_ids)) {
$r_fetch_record = self::DBFetch($n, $n_fetch_ids, $k, $db);
if (false == empty($r_fetch_record)) {
$result = array_merge($y_fetch_record, $r_fetch_record);
}
}
if ($single) {
return empty($result) ? array() : array_shift($result);
}
$result = Utility::AssColumn($result, $k);
$result = Utility::SortArray($result, $ids);
return $result;
}