segunda-feira, 10 de outubro de 2011

Trabalhando com Datas no PHP


A forma mais comum de se tratar datas no PHP é o comando date() que além de capturar a data atual do sistema também faz conversão do tipo de dado do formato Date para um formato em String.

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
echo $today ; // imprime o valor da data
Ou é possível usar a chamada date() direta sobre a data.
O tipo de dado deve ser uma data por isso a funçao strtotime()
echo date("YW", strtotime("2011-01-01"));
Outra opção seria trabalhar com vetores e Strings. Eu uso uma função passando um parametro 0 para formato do banco de dados e parametro 1 para formato de exibição na tela.
function convertedata($dataform, $tipo){

  if ($tipo == 0) {
     $datatrans = explode ("/", $dataform);
     if (strlen($datatrans[1])==1){
       $datatrans[1]="0".$datatrans[1];
     }
     if (strlen($datatrans[0])==1){
       $datatrans[0]="0".$datatrans[0];
     }
     $data = "$datatrans[2]$datatrans[1]$datatrans[0]";

  } elseif ($tipo == 1) {
     $datatrans = explode ("-", $dataform);
     $data = "$datatrans[2]/$datatrans[1]/$datatrans[0]";
  } elseif ($tipo == 2) {
     $datatrans = explode ("%3A", $dataform);
     $data = "$datatrans[0]$datatrans[1]";
  } elseif ($tipo == 3) {
     $datatrans = explode ("-", $dataform);
     $data = "$datatrans[2]/$datatrans[1]/$datatrans[0]";
  }
  return $data;
}

Nenhum comentário:

Postar um comentário