我有以下测试代码。
现在它是一个非常小的数组,但实时非常大。
如何直接在APC FOO中更新键1中的值?
$test = array(
array(
'name' => 'Mike',
'lastname' => 'Last',
),
array(
'name' => 'test',
'lastname' => 'testlast',
),
array(
'name' => 'anothertest',
'lastname' => 'anothertestlast',
),
);
apc_store('foo', $test);
print_r(apc_fetch('foo'));
答案 0 :(得分:2)
我不认为您可以直接在缓存中更改变量。我最好的猜测是编写一个函数,从缓存中获取数据,改变它,并将其存储回缓存中。也许是这样的:
function apc_update_array($cacheKey, $arrayKey, $array)
{
$data = apc_fetch($cacheKey);
$data[$arrayKey] = $array;
apc_store($cacheKey, $data);
}
使用该功能,您只需运行以下代码即可完成。
apc_update_array(
'foo',
1,
array(
'name' => 'differenttest',
'lastname' => 'differenttestlast',
)
);