Gostou do nosso conteúdo? Te ajudou?
Nos ajude também! Faça um PIX, de qualquer valor:
programacao.progressiva@gmail.com

Como obter tempo atual: Função gettimeofday() do PHP

Neste tutorial de nosso curso de PHP, vamos aprender para que serve e como usar a função gettimeofday(), para pegar as informações do momento atual do sistema.

Apostila de PHP para download

Obtendo informações atuais: gettimeofday()

Para obtermos algumas informações do exato instante que o sistema PHP está rodando, usamos a função pré-definida gettimeofday().

Quando simplesmente invocamos ela: gettimeofday()
Ela retorna um array, com os seguintes elementos:

  • [sec] - Número de segundos desde a Unix Epoch
  • [usec] - microssegundos atual
  • [minuteswest] - a quantos minutos você está a oeste do meridiano de Greenwich
  • [dsttime] - um inteiro, que representa o horário de verão:


0 - Sem horário de verão
1 - Horário dos EUA
2 - Horário da Australia
3 - Horário do oeste europeu
4 - Horário da europa meridional
5 - Horário do leste europeu
6 - Horário do Canadá
7 - Horário de Grã-Bretanha e Irlanta
8 - Horário da Romênia
9 - Horário da Turquia
10- Horário da Austrália, variação de 1986

Quando eu dou: print_r(gettimeofday());
O que aparece atualmente para mim é:
Array (
[sec] => 1551025438
[usec] => 880119
[minuteswest] => 180
[dsttime] => 0 )

E para vocês? Deixem nos comentários.

Como pegar exato instante atual: gettimeofday(TRUE)

A função gettimeofday()) também aceita como parâmetro o booleano TRUE.
Quando usamos ele, ela retorna apenas um float, com o instante exato do momento atual, com segundos da Unix Epoch e mais 4 casas decimais de microssegundos.

Fazendo: print_r(gettimeofday(TRUE));
Obti: 1551025529.2385

E vocês?

Exercício: Tempo de execução de um script

Uma das funcionalidades da gettimeofday() é descobrir o tempo de execução de um script em PHP.

Primeiro, pegamos o tempo inicial:
$d1 = gettimeofday(TRUE);

Fazemos nosso scripts.

Depois, pegamos o tempo final:
$d2 = gettimeofday(TRUE);

Prontinho, basta subtrair esses valores e teremos o tempo de execução de um script.
Vamos testar com um "Olá, mundo":
<?php
 $d1 = gettimeofday(TRUE);
 echo "Olá mundo<br />";  
 $d2 = gettimeofday(TRUE);
 
 echo "Tempo de execução: ".($d2-$d1);
?>
O resultado aqui foi:
Tempo de execuçãoa: 9.5367431640625E-7

Ou seja: 0,000000954s

Bem rápido esse PHP, não?