我遇到了 PHP 在本地存储中间结果的问题。
与APC
:</p>
apc_store("foo", "bar");
$ret = apc_fetch("foo");
与APCu
:</p>
apcu_store("foo", "bar", 0);
$ret = apcu_fetch("foo");
我在 php 脚本的 php_cli 下使用 apc_store/apcu_store 存储,并在另一个 php 脚本上使用 apc_fetch/apcu_fetch 获取,发现$ret
为空。
同时,与shmop
:
$shmKey = ftok(__FILE__, 't');
$shmId = shmop_open($shmKey, "c", 0644, 1024);
$dataArray = array("foo" => "bar");
shmop_write($shmId, serialize($dataArray), 0);
$retArray = unserialize(shmop_read($shmId, 0, shmop_size($shmId)));
$ret = $retArray['foo'];
在这里我得到$ret
: "bar"
。
不应该像APC/APCu
缓存一样在本地缓存中间结果shmop
吗?