gpt4 book ai didi

symfony - 如何清除 Symfony 2 中的路由缓存

转载 作者:行者123 更新时间:2023-12-02 17:53:48 25 4
gpt4 key购买 nike

我在所有路径中覆盖路由加载程序(routing.loader)以设置要求键 {_locale} 并设置默认值。所有语言环境都保存在数据库中。我希望在数据库中保存新的语言环境后清除路由缓存(Matcher 和 Dumper 缓存类),因为要求从数据库加载参数。

谢谢。

最佳答案

Symfony 缓存路由文件:

appDevUrlMatcher.phpappDevUrlGenerator.php

在你的缓存目录中,var/cache/dev(prod)

删除这些文件即可

 protected function warmUpRouteCache() {

$router = $this->get('router');
$filesystem = $this->get('filesystem');
$kernel = $this->get('kernel');
$cacheDir = $kernel->getCacheDir();

foreach (array('matcher_cache_class', 'generator_cache_class') as $option) {
$className = $router->getOption($option);
$cacheFile = $cacheDir . DIRECTORY_SEPARATOR . $className . '.php';
$filesystem->remove($cacheFile);
}

$router->warmUp($cacheDir);
}

它对我有用。

关于symfony - 如何清除 Symfony 2 中的路由缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16494232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com