Inscrições abertas para nosso Webinar anual Adianti Framework 2024!
Clique aqui para saber mais
Exclui os arquivos temporários no servidor (pasta temp e output) Pra ajudar a todos vou deixar aqui um serviço pra excluir arquivos temporários das pastas tmp e app/output Este serviço deve ser incluído no Crontab pra rodar periodicamente. Seu objetivo é ficar deletando os arquivos temporários para não consumir muito do HD. ...
RM
Exclui os arquivos temporários no servidor (pasta temp e output)  
Pra ajudar a todos vou deixar aqui um serviço pra excluir arquivos temporários das pastas tmp e app/output

Este serviço deve ser incluído no Crontab pra rodar periodicamente.
Seu objetivo é ficar deletando os arquivos temporários para não consumir muito do HD.

  1. <?php
  2. /**
  3.  * garbageColectorService
  4.  *
  5.  * Exclui os arquivos temporários no servidor (pasta temp, output, etc)
  6.  * @package service
  7.  * @author Ricardo Câmara (camaramachado@gmail.com)
  8.  * @version 1.0
  9.  * 
  10.  * Comando cron: /usr/local/bin/php /home/sistema/public_html/cmd.php "class=GarbageColectorService&method=clear&static=1"
  11.  */
  12. class GarbageColectorService
  13. {   
  14.   
  15.     /**
  16.      * @method clear
  17.      * Exclui os arquivos temporários.
  18.      * @param $param['pastas'] array com os diretorios dos arquivos que serão deletados.
  19.                por padrão apaga em tmp e app/output
  20.      * @param $param['extensoes'] array com as extensões dos arquivos que se deseja apagar
  21.      *           por padrão apaga: pdf, jpg, jpeg, png, xls, doc, csv, html.
  22.      * @returns void 
  23.      */
  24.     public static function clear(array $param): void
  25.     {
  26.         $pastas         = isset($param['pastas']) ? $param['pastas'] : ['tmp''app/output'];
  27.         $extensoes     = isset($param['extensoes']) ? $param['extensoes'] : ['pdf''jpg''jpeg''png''xls''doc''csv''html''xml''rtf'];
  28.         
  29.         foreach($pastas as $pasta)
  30.         {
  31.             if( !is_dir$pasta ) ) {
  32.                 die ( "Diretório inválido.\n\n" );
  33.             }
  34.             $prepara     '';
  35.             $cont     count($extensoes);
  36.             
  37.             foreach($extensoes as $key => $extensao)
  38.             {
  39.                 $prepara .= $pasta '/*.' .$extensao//tmp22/*.pdf,tmp22/*.txt,tmp22/*.jpg,tmp22/*.jpeg,tmp22/*.png
  40.                 $prepara .= ($key $cont -1) ? ',' ''//checa se deve incluir a vírgula pra não entrar após a última extensão
  41.             }
  42.             
  43.             $prepara     '{' $prepara '}';
  44.             $lista      glob($preparaGLOB_BRACE);
  45.             array_map('unlink'$lista);
  46.         }
  47.     }
  48.     
  49. }
  50. ?>
Editado 04/08/2023 (há 1 ano) - Clique para ver alterações

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (0)