ZVAL 通常是使用 emalloc 创建的,因此它在页面请求结束时被销毁。有没有办法获取现有的 ZVAL 并使其在 SAPI 中持续存在(相当于 pemalloc)?用 pemalloc 创建 ZVAL 怎么样?
理想情况下,我想做的(在 PHP 代码中)是这样的:
class Object
{
public $foo;
}
if(!($object = persist("object")))
{
$object = persist("object", new Object());
}
$object->foo[] = "bar";
print count($object->foo);
每个请求count
都会返回 +1(假设每次都使用相同的 PHP“worker”——我使用的是 PHP-FPM)。