我的PHP版本是7.4.3,还配置并启用了APCu扩展。我在Symfony 4应用程序中使用Doctrine APCu缓存。现在,每当我试图清除result
、query
或metadata
缓存时,我都会出现以下错误。
php bin/console doctrine:cache:clear-result
// Clearing all Result cache entries
[ERROR] No cache entries were deleted.
此问题仅适用于Symfony应用程序。核心PHPapcu_store
运行良好。apcu_store
在我的本地主机上返回false,仅用于Symfony应用程序。
下面是我的条令配置文件
doctrine.yaml
doctrine:
orm:
metadata_cache_driver: apcu
query_cache_driver: apcu
result_cache_driver: apcu
.....
相同的代码在我的产品上有效,但在我的本地产品上无效。结果未清除。
我不是Symfony的专业人员,但如果没有删除缓存项,Symfony可能没有使用它。https://www.doctrine-project.org/projects/doctrine-orm/en/2.7/reference/caching.html
<?php
$query = $em->createQuery('select u from EntitiesUser u');
$query->useResultCache(true);
您确定要在清除结果之前先保存结果吗?从未使用过apcu来获得结果,但它应该有效。。。
也许您可以通过几个例子提供有关配置的其他信息。
干杯。