[英]PHP apcu_clear_cache: is it user-specific and if so how to get around it?
我正在使用 Laravel,我创建了一个 route:call 命令,其方式与以下问题中接受的答案相同: Call laravel controller via command line
现在我有一个如下所示的控制器:
class FooController
{
public function apcuClear(Request $request) : void
{
apcu_clear_cache();
echo "cleared";
}
}
通过适当的路由设置,我可以使用php artisan route:call --uri=/foo/apcuClear
route:call 命令,并且正确显示输出“已清除”。
然而,问题是 apcu 缓存没有被清除,每个对 Laravel 的请求仍然最终显示缓存值。
当通过实际的 HTTP 请求而不是通过命令行调用函数apcu_clear_cache()
时,它本身被确认工作正常。
我的猜测是,由于用户“apache”在发出请求时正在运行 Laravel,这与用户在命令行上运行 route:call 命令不同, apcu_clear_cache
没有清除正确的缓存。
我的猜测正确吗? 如果是这样,我如何使用命令行正确清除实际应用程序中的apcu?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.