このライブラリlaravel-snappyを使用して、キューでPDFを生成しています。
ライブラリは、スクリプトの実行後にすべての tmp ファイルを削除するように設計されています。これは、Knp\Snappy\AbstractGenerator
クラスの次のコードによるものです。
public function __destruct()
{
$this->removeTemporaryFiles();
}
参照 - https://github.com/KnpLabs/snappy/blob/master/src/Knp/Snappy/AbstractGenerator.php#L57
コマンドが開始されるとキュージョブ内とLaravelでこれを使用しているため、queue:work
手動で停止するか端末を閉じるまで実行され続けます。
したがって、tmp ファイルを消去するには、毎回キュー ワーカーを再起動する必要があります。
これに代わるものはありますか?
注 - Knp\Snappy\AbstractGenerator
laravel-snappy のラッパー内のクラスのインスタンスはprotected
. そのため、そのメソッドを直接呼び出すことはできません。
参照 - https://github.com/barryvdh/laravel-snappy/blob/master/src/PdfWrapper.php#L20