calendario-datas-com-php

Trabalhando com datas no PHP com a função date

Trabalhar com datas no PHP é bastante fácil e intuitivo. Porém, para quem está começando a conhecer a linguagem pode parecer algo bem difícil e impossível de aprender. Mas como isso não é verdade, vou mostrar neste pequeno artigo como trabalhar com datas no PHP. Seja gerando as datas automaticamente, ou apenas fazendo a formatação.

Para escrever qualquer data no PHP, você deve utilizar a função date. Vamos ver abaixo como se escreve no editor de códigos:

<?php
//escrever na tela a data de hoje automaticamente
echo date('d/m/Y');

O exemplo acima mostra como podemos facilmente escrever na tela a data de hoje gerada automaticamente pegando a data do servidor que está hospedando o script.

O exemplo deve mostrar na tela uma data no seguinte formato: 19/02/1994. É o formato em português. Mas nós devemos saber que tanto o PHP quanto a linguagem SQL foram criadas para trabalhar no idioma inglês. Por isso, sempre que formos realizar operações com data através do PHP ou do SQL, as datas precisam estar no formato inglês.

Para escrever a mesma data do exemplo anterior preparada para o banco de dados SQL (MySQL) seria assim:

<?php
//setando a data
$data = date('Y-m-d');
//escrevendo na tela
echo "$data";

Isso imprimiria na tela algo como 1994-02-19, que é a data no formato inglês que o SQL e o PHP “entendem”.

Agora, vamos aprender com pegar uma data em formato português e transformá-la no formato inglês. É bastante simples.

<?php
//primeiro pegamos a data que provavelmente foi passada via POST vinda de um
//formulário onde o usuário digitou em português
$data_pt = $_POST['data'];
//a data deve estar formatada desta forma: 19/02/1994
//por isso, vamos quebrá-la através da função explode para podermos formatá-la
//em inglês
$quebra = explode("/",$data_pt);
$dia = $quebra['0'];
$mes = $quebra['1'];
$ano = $quebra['2'];
//agora, montamos a data no formato inglês
$data_en = $ano.'-'.$mes.'-'.$dia;
<?php
//primeiro pegamos a data que provavelmente foi passada via POST vinda de um
//formulário onde o usuário digitou em português
$data_pt = $_POST['data'];
//a data deve estar formatada desta forma: 19/02/1994
//por isso, vamos quebrá-la através da função explode para podermos formatá-la
//em inglês
$quebra = explode("/",$data_pt);
$dia = $quebra['0'];
$mes = $quebra['1'];
$ano = $quebra['2'];
//agora, montamos a data no formato inglês
$data_en = $ano.'-'.$mes.'-'.$dia;

Este foi mais um artigo publicado originalmente em 17 de dezembro de 2009 no meu antigo blog BrasilPHP.net.

Hellston Linhares

Deixe um comentário

O seu endereço de e-mail não será publicado.