- Como Criar Um Site, Blog – WebMaster.pt - http://www.webmaster.pt -

Como Usar O Crontab Com O PHP

Tweet [3]

Tu já percebeu como as coisas hoje em dia estão corridas?

São várias tarefas, vários eventos para desenvolver e se não prestarmos atenção, corremos o risco de deixarmos algo para trás.

Alguns profissionais que utilizam programas e ficheiros em desktop, utilizam o “Agendador de Tarefas” para não realizar suas atividades. E você que usa a Internet? Que recurso poderá usar?

Hoje estaremos falando um pouco sobre o “Crontab”, isto é: Um recurso disponível no Linux e também no CPanel, um dos mais conhecidos Paineis de Gerenciamento de Web Sites do mundo.

crontab

Não vamos entrar em detalhes quanto ao gerenciamento do Crontab no Linux, nem a seus recursos, mas daremos um exemplo básico de como você pode usar o PHP e melhorar suas atividades utilizando esta ferramenta.

Conhecendo O Crontab

Conforme falamos a pouco no início desta matéria, o Crontab do Linux segue o mesmo conceito do agendador de tarefas do Windows.

Se você desenvolve algum sistema, certamente precisa executar uma cobrança, avisos periódicos, entre outras funções.

Com o tempo, isso se torna cansativo fazer manualmente.

Por esse motivo, temos como usar o Crontab, pois essa ferramenta que é nativa do Linux e está disponível em nossos Painéis de Controle (CPanel), nos possibilita efetuar serviços programados na hora exata (hora, minuto, dia, semana ou mês).

Modo De Uso Do Crontab

A primeira vista, se você nunca usou o Crontab para executar tarefas, com certeza você vai estranhar o seu funcionamento, mas após se acostumar, não terá problemas.

O Crontab trabalha executando comandos agendados através de minutos, horas, dias, meses e dias da semana.

Vamos verificar um exemplo mais prático:

Após isso, execute o Comando, isto é: a tarefa que deverá ser executada através do Crontab.

Entendo se você disser: Puxa, complicou tudo…

Vamos para alguns exemplos práticos?

Executando Scripts De Hora Em Hora

Digamos que você queira agendar uma tarefa disponível no ficheiro “usando_crontab.php” (disponível em “/var/www”). Basta apenas executar a tarefa conforme o código a seguir:



00 * * * * /var/www/usando_crontab.php

OBS.: No evento acima, estamos programando o script “usando_crontab.php” para ser executado todos os dias, de hora em hora sempre que chegar ao minuto “00″.

Executando Scripts Diáriamente

Digamos que você queira executar o script diáriamente. Você precisará seguir esse formato:



02 4 * * * /var/www/usando_crontab.php

Executando Script Semanalmente

Para executar o script semanalmente, você precisa mudar apenas alguns detalhes (conforme código a seguir).



22 4 * * 0 /var/www/usando_crontab.php

Bem… é algo prático, mas… vamos matar todas as dúvidas analisando um gráfico?

Veja o código a seguir e pense em um horário para executar seu script.



    44 3 * 3-11 1-5 root /var/www/usando_crontab.php
     | | |   |   |   |     |
     | | |   |   |   |     +---- comando a ser executado (com a rota)
     | | |   |   |   +---------- usuário que executará o comando
     | | |   |   +-------------- dia da semana
     | | |   +------------------ mês do ano
     | | +---------------------- dia do mês
     | +------------------------ hora
     +-------------------------- minuto

Mais prático, não?

Como Usar O PHP?

Bem… a integração ao PHP é muito mais fácil e pede apenas 1 detalhe:

Antes de executar seu script, é necessário disponibilizar o caminho a seguir na primeira linha, para que o Crontab execute o arquivo PHP corretamente (conforme o exemplo a seguir):



#!/usr/bin/php

Bem… não precisa fazer muita coisa. Basta apenas você elaborar o seu script e agendar no Crontab.

No exemplo a seguir, o ficheiro disponibiliza no ficheiro “teste.txt” os horários em que executou tarefa no Crontab.



#!/usr/bin/php

<?php

file_put_contents("teste.txt", "Crontab rodou em: ".date(‘d/m/Y H:i’));

?>

Prático, não?

Execute suas atividades e faça os ajustes necessários!

Acredito que mesmo se você tiver pouco tempo de Programação web, não terá dificuldades para trabalhar com esta ferramenta.

Tweet [3]
Be Sociable, Share!
  • [4]
  • [5]
  • [6]
  • [7]
  • [8]