lamoda / cleaner-bundle
该包已被废弃且不再维护。未建议替代包。
lamoda/cleaner 库的 Symfony 扩展包
1.0.0
2021-08-11 12:50 UTC
Requires
- php: ^7.1 || ^8.0
- lamoda/cleaner: *
- symfony/config: ^3.4 || ^4.0 || ^5.0
- symfony/console: ^3.4 || ^4.0 || ^5.0
- symfony/dependency-injection: ^3.4 || ^4.0 || ^5.0
- symfony/http-kernel: ^3.4 || ^4.0 || ^5.0
- symfony/yaml: ^3.4 || ^4.0 || ^5.0
Requires (Dev)
- ext-pdo_sqlite: *
- doctrine/dbal: ^2.6
- doctrine/doctrine-bundle: ^1.7
- friendsofphp/php-cs-fixer: ^2.14
- phpunit/phpunit: ^7.5.20 || ^8.5.12 || ^9.0
- symfony/framework-bundle: ^3.4 || ^4.0 || ^5.0
- symfony/monolog-bridge: ^3.0 || ^4.0 || ^5.0
- symfony/monolog-bundle: ^3.2 || ^5.0
This package is auto-updated.
Last update: 2023-06-11 16:40:16 UTC
README
为 lamoda/cleaner 库提供的 Symfony 扩展包。
安装
- 使用 composer 安装该扩展包
$ composer require lamoda/cleaner-bundle
- 启用该扩展包
<?php // config/bundles.php return [ // ... Lamoda\CleanerBundle\LamodaCleanerBundle::class => ['all' => true], // ... ];
- 配置项目的清理器
lamoda_cleaner: db: queue: transactional: false # optional, default true query: DELETE FROM queue WHERE created_at < NOW() - (:interval || ' days')::interval parameters: interval: 30 types: # optional, if required special type handling - integer # you can use multiple queries at one command multi_tables: class: Lamoda\Cleaner\DB\DoctrineDBALCleaner transactional: true queries: - query: DELETE FROM table_a WHERE created_at < NOW() - (:interval || ' days')::interval parameters: interval: 30 - query: DELETE FROM table_b WHERE created_at < NOW() - (:interval || ' days')::interval parameters: interval: 30
您还可以添加自己的存储清理器。为此,您需要实现 Lamoda\Cleaner\CleanerInterface
并使用标签注册您的清理器
services: custom_cleaner: class: My\Custom\Implementation tags: - { name: 'lamoda_cleaner.db', alias: 'custom' }
使用方法
该扩展包添加了运行清理器的命令。
运行数据库中的所有清理器
./bin/console cleaner:clear db
或其中之一
./bin/console cleaner:clear db queue