Classe para conversões de data/hora em diversos formatos
Publicado por Erick Rettozi (última atualização em 01/02/2011)
[ Hits: 4.819 ]
Homepage: www.inpacksolutions.com.br
Download dataStrPtBr.class.php
Com esta classe é possível converter uma determinada data e/ou hora passada no seguinte formato: yyyy-mm-dd HH:MM:SS, em diversos formatos.
<?php /* Classe para conversões de data/hora em diversos formatos Autor: Erick Rettozi Versão: 1.0.2 Exemplo: require_once(CLASS_DIR . 'dataStrPtBr.class.php'); $data = new DataStrPtBr(); $data->usarData('2010-01-25 19:33:36'); print $data->dataFormatoRFC822() . "\n"; // Imprime: Seg, 25 Jan 2010 19:33:36 */ class DataStrPtBr { private $myDateOrHour; private $_this; public function __construct() { $_this = $this; } public function usarData($date_hour = 0) { if($date_hour) { $this->myDateOrHour = date("Y-m-d H:i:s", strtotime($date_hour)); } else { $this->myDateOrHour = date("Y-m-d H:i:s",time()); } } public function destroy() { } public function diaSemanaRFC822(){ $dia_semana = array( 0 => "Dom" ,1 => "Seg" ,2 => "Ter" ,3 => "Qua" ,4 => "Qui" ,5 => "Sex" ,6 => "Sab" ); return $dia_semana[date('w',strtotime($this->myDateOrHour))]; } public function mesRFC822(){ $mes = array( 1 => "Jan" ,2 => "Fev" ,3 => "Mar" ,4 => "Abr" ,5 => "Mai" ,6 => "Jun" ,7 => "Jul" ,8 => "Ago" ,9 => "Set" ,10 => "Out" ,11 => "Nov" ,12 => "Dez" ); return $mes[date('n',strtotime($this->myDateOrHour))]; } public function dia(){ return date("d", strtotime($this->myDateOrHour)); } public function diaSemana($args = array()){ $dia_semana = array( 0 => "Domingo" ,1 => "Segunda-feira" ,2 => "Terça-feira" ,3 => "Quarta-feira" ,4 => "Quinta-feira" ,5 => "Sexta-feira" ,6 => "Sábado" ); $return = (isset($args["lowercase"])) ? strtolower($dia_semana[date('w',strtotime($this->myDateOrHour))]) : $dia_semana[date('w',strtotime($this->myDateOrHour))]; return $return; } public function mes($args = array()){ $mes = array( 1 => "Janeiro" ,2 => "Fevereiro" ,3 => "Março" ,4 => "Abril" ,5 => "Maio" ,6 => "Junho" ,7 => "Julho" ,8 => "Agosto" ,9 => "Setembro" ,10 => "Outubro" ,11 => "Novembro" ,12 => "Dezembro" ); $return = (isset($args["lowercase"])) ? strtolower($mes[date('n',strtotime($this->myDateOrHour))]) : $mes[date('n',strtotime($this->myDateOrHour))]; return $return; } public function ano() { return date("Y", strtotime($this->myDateOrHour)); } public function dataExtenso($args = array()) { $str = $this->diaSemana() . ', ' . $this->dia() . ' de ' . $this->mes() . ' de ' . $this->ano(); $return = (isset($args["lowercase"])) ? strtolower($str) : $str; return $return; } public function horaMinuto() { if($this->myDateOrHour != "") { return date('H:i',strtotime($this->myDateOrHour)); } else { return date('H:i'); } } public function dataHoraPtBr() { return date('d/m/Y H:i:s',strtotime($this->myDateOrHour)); } public function data() { return date("d/m/Y", strtotime($this->myDateOrHour)); } public function hora(){ return date('H',strtotime($this->myDateOrHour)); } public function minuto(){ return date('i',strtotime($this->myDateOrHour)); } public function segundo(){ return date('s',strtotime($this->myDateOrHour)); } public function dataFormatoRFC822() { if($this->myDateOrHour != "") { $semana = $this->diaSemanaRFC822(); $dia = $this->dia(); $mes = $this->mesRFC822(); $ano = $this->ano(); if ( strlen($ano) == 2 ) { $ano = "20" . $ano; } $hora = $this->hora(); if ( $hora == 0 ) { $hora = "00";} $minuto = $this->minuto(); if ( $minuto == 0 ) { $minuto = "00"; } $segundo = $this->segundo(); if ( $segundo == 0 ) { $segundo = "00"; } $GMT = $semana . ", " . $dia . " " . $mes . " " . $ano . " " . $hora . ":" . $minuto . ":" . $segundo . " "; } else { $GMT = ""; } return $GMT; } } ?>
evePHP: Classe para desenvolvimento PHP
Mostra a quantidade dos dias da semana em intervalo
Menu Dinamico (PHP + MySQL) - 5 niveis
Nenhum comentário foi encontrado.
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Solução rápida para o problema do Network Manager conectar mas não navegar
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
Montando e usando iso de um sistema dentro do outro (2)
Criar atalho para uma pasta na area de trabalho no Linux Mint? (0)
Precisa de ajuda com monitoramento ou problemas com Zabbix? (0)