在同一個請求中使用設定的 ttl 更新同一個鍵時要小心。例如:
<?php
for ($i = 0; $i < 20; $i++) {
apcu_store('test', $i, 10);
sleep(1);
}
?>
金鑰將在 10 秒後失效且不會更新。已在 Windows 和 Linux 平台上測試。不確定這是錯誤還是未記錄的行為。
(PECL apcu >= 4.0.0)
apcu_store — 將變數快取到資料儲存區
將變數快取到資料儲存區。
注意事項: 與 PHP 中的許多其他機制不同,使用 apcu_store() 儲存的變數會在請求之間持續存在(直到該值從快取中移除)。
key
使用此名稱儲存變數。每個 key
在快取中都是唯一的,因此使用相同的 key
儲存第二個值將會覆蓋原始值。
var
要儲存的變數
ttl
存活時間(Time To Live);將 var
儲存在快取中 ttl
秒。在 ttl
秒數過後,儲存的變數將會從快取中清除(在下一個請求時)。如果沒有提供 ttl
(或者 ttl
為 0
),該值將會持續存在,直到它被手動從快取中移除,或因其他原因而不再存在於快取中(例如清除、重新啟動等)。
values
鍵值對,鍵為名稱,值為變數。
範例 #1 apcu_store() 範例
<?php
$bar = 'BAR';
apcu_store('foo', $bar);
var_dump(apcu_fetch('foo'));
?>
以上範例將輸出
string(3) "BAR"
在同一個請求中使用設定的 ttl 更新同一個鍵時要小心。例如:
<?php
for ($i = 0; $i < 20; $i++) {
apcu_store('test', $i, 10);
sleep(1);
}
?>
金鑰將在 10 秒後失效且不會更新。已在 Windows 和 Linux 平台上測試。不確定這是錯誤還是未記錄的行為。