Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Viva pessoal,
Há algum comando php que faça automaticamente a formatação de uma variavel tipo texto para uma tipo data??
ja tentei: date('Y-m-d',$varivavel); e nada..
ja tentei: $dataC1 = substr($variavel,0,4); $dataC2 = substr($variavel,4,6); $dataC3 = substr($variavel,6,8); Lista mal..
Obrigado.
você vai ter que "explodir" a variavel da data à procura do separador que poder ser "/" ou "-"
segue um exemplo
list($ano,$mes,$dia) = explode("-",$variavel); //explode à procura de "-"
$dataFormatada = $dia."/".$mes."/".$ano;
echo $dataFormatada;Acabei de fazer isso agora mesmo :rolleyes:
convertedata.php
<?php
function ConverteData($Data) {
if(strstr($Data, "-")){
$d = explode ("-", $Data);
$rstData = "$d[2]/$d[1]/$d[0]";
return $rstData;
}else{
return "Data invalida";
}
}
?>
Pra chamar a função, basta colocar
include_once('convertedata.php');
$datafinal = ConverteData($dataaserconvertida);
Eu tenho uma função de validar data também, se tu quiser http://forum.imasters.com.br/public/style_emoticons/default/graduated.gif
Boas pessoal..
Bem eu acho que não me expliquei bem.. Esses exemplos que mostraram são os comuns em conversões de datas.
O que eu quero mesmo é: Tendo um texto do tipo 20081208, sacar daqui a data ficando desta forma 2008/12/08 ou 2008-12-08 (isto depois eu escolheria)
Desde já obrigado pela colaboração.
date('Y-m-d')
Year=Month-Day
function foo( $n )
{
return substr( $n, 0, 4 ) . '/' . substr( $n, 4, 2 ) . '/' . substr( $n, 6 );
}
echo foo( 20081230 );
function foo( $n )
{
$patterns = array ('/(19|20)(\d{2})(\d{1,2})(\d{1,2})/');
$replace = array ('\1\2/\3/\4');
return preg_replace($patterns, $replace, $n);
}
echo foo( 20081230 );$data = "Y-m-d";
$dataFormatada = date("d-m-Y", strtotime($data));
Simples assim.
tenta ('d-m-Y')