strptime
time
Funções de Data/Hora
PHP Manual

# strtotime

(PHP 4, PHP 5)

strtotime — Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

### Descrição

int strtotime ( string `$time` [, int `$now` ] )

A função espera que seja dado uma string contendo um formato de data em inglês US e tentará analisar esse formato dentro de um timestamp Unix (o número de segundos desde January 1 1970 00:00:00 GMT), relativo ao timestamp dado em `now`, ou a hora atual se `now` não é fornecido.

Esta função usará a variável de ambiente TZ (se disponível) para calcular o timestamp. Desde o PHP 5.1.0 há forma fácil para definir o timezone que é usada em todas as funções de data/hora. Este processo é explicado na página da função date_default_timezone_get().

> Nota: Se o número do ano é especificado no formato de dois dígitos, o valor entre 00-69 é mapeado para 2000-2069 e 70-99 para 1970-1999.

### Parâmetros

`time`

  A string para analisar, de acordo com a sintaxe GNU de » Formato de Entrada de Data. Antes do PHP 5.0.0, microsegundos não eram permitidos na hora, desde o PHP 5.0.0 eles são permitidos mas ignorados.

`now`

  O timestamp usado para calcular o valor retornado.

### Valor Retornado

Retorna um timestamp em sucesso, `FALSE` caso contrário. Antes do PHP 5.1.0, esta função podia retornar -1 em falha.

### Erros

Toda a chamada a uma função de data/hora irá gerar um se a zona da hora não for valida, e/ou uma mensagem `E_STRICT` ou `E_WARNING` se estiver usando a definição do sistema ou a variável de ambiente TZ. Veja também date_default_timezone_set()

### Histórico

Versão | Descrição
--- | ---
5.1.0 | Ela agora retorna `FALSE` em falha, ao invés de -1.
5.1.0 | Agora emite `E_STRICT` e `E_NOTICE` em erros da zona de horário.

### Exemplos

Exemplo #1 Exemplo da strtotime()

`<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?>`

Exemplo #2 Checando por falha

`<?php
$str = 'Not Good';
// em versões antes do PHP 5.1.0 você compararia com -1, ao invés de false
if (($timestamp = strtotime($str)) === false) {
echo "The string ($str) is bogus";
} else {
echo "$str == " . date('l dS \o\f F Y h:i:s A', $timestamp);
}
?>`

### Notas

Aviso

Em PHP 5 superior a 5.0.2, "now" e outros tempo relativos são erradamente computados para meia-noite do dia. Diferente de outras versões onde ele é corretamente computado da hora atual.

Aviso

Nas versões do PHP menor que 4.4.0, "next" é incorretamente computado como +2. Uma solução típica para isso é usar "+1".

> Nota: O intervalo válido de um timestamp é tipicamente de Fri, 13 Dec 1901 20:45:54 GMT até Tue, 19 Jan 2038 03:14:07 GMT. (Estas são datas que correspondem aos valores máximos e mínimos para um inteiro assinado de 32-bit.) Adicionalmente, nem todas as plataformas suportam timestamps negativos, então a faixa de sua data pode ser limitada antes de chegar na Era Unix. Isto significa que ex. datas antes de Jan 1, 1970 não trabalharão no Windows, nem em algumas distribuições do Linux, e num grupo de outros sistemas operacionais. PHP 5.1.0 e mais recentes versões superaram esta limitação, no entanto.

### Veja Também

- strptime() - Parse a time/date generated with strftime

strptime
time
Funções de Data/Hora
PHP Manual