Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola Pessoal
Como eu pego a DATA DE AMANHA EM PHP ??? ou seja PROXIMO DIA?
Exemplo.: hoje é: 2009-08-06, dai mostra: 2009-08-07
Por favor!
<?
echo date('d/n/Y', strtotime("+1 day"));
?>Obrigado por responderem http://forum.imasters.com.br/public/style_emoticons/default/grin.gif
Diego, isso não funciona em anos bixestos kra!
Matias, ele funciona em anos bixetos?? Testei mas não vi problema só quero ter certeza! ^_^
Matias
Como eu faço ele retornar a data em yyyy-mm-dd ???
eu tentei aqui mas até agora sem sucesso! http://forum.imasters.com.br/public/style_emoticons/default/blush.gif
obrigado
Cara, o código tá bem explicado. Tenta entender o que está sendo feito nele. O que você vai ter que fazer é mudar a forma que pega o date para Y-m-d e mudar a ordem dos índices da $data. Vai testando que uma hora funciona.
Carlos Eduardo
E num é que ainda to tentando...
eu fiz assim:
function SomarData($data, $ano, $meses, $dias)
{
$data = explode("-", $data);
//ESSA LINHA ABAIXO EU NÃO ENTENDI!
$newData = date("Y-m-d", mktime(0, 0, 0, $data[2] + $ano, $data[0] + $dias, $data[1] + $meses) );
//Fiz isso pra eu me orientar
echo "ano:".$data[0]."<BR>";
echo "mes:".$data[1]."<BR>";
echo "dia:".$data[2]."<BR>";
return $newData;
}
//Coloquei @ para ocultar erros
echo @SomarData(date('Y-m-d'),1);
me retorna assim:ano:2009
mes:08
dia:07
2014-01-30
>> Onde coloquei @ ele sempre me retorna 2 erros:
Warning: Missing argument 3 for SomarData(), called in C:\xampp\htdocs\dario\cadof\dimar\inicio.php on line 55 and defined in C:\xampp\htdocs\dario\cadof\dimar\inicio.php on line 45
e
Warning: Missing argument 4 for SomarData(), called in C:\xampp\htdocs\dario\cadof\dimar\inicio.php on line 55 and defined in C:\xampp\htdocs\dario\cadof\dimar\inicio.php on line 45
Por isso coloquei @, dai beleza...
>> Essa aqui eu não entendi:
$newData = date("Y-m-d", mktime(0, 0, 0, $data[2] + $ano, $data[0] + $dias, $data[1] + $meses) );
>> Ele soma: ano com dias? dias com ano ? Num entendi!
Por favor!
Sobre o erro foi falha minha, mas você poderia ter percebido...
function SomarData($data, $ano, $meses, $dias)
Veja que são passados 4 parâmetros para a função e nenhum deles é opcional. O que seria um parâmetro opcional?
function SomarData($data, $dias, $meses = 0, $ano = 0)
Agora os valores $meses e $ano são opcionais.
Vamos explicar a função. Leia os comentários para entender.
function SomarData($data, $dias, $meses = 0, $ano = 0)
{
$data = explode("-", $data);// aqui você separa a $data que foi passada por -, o que vai gerar um array conforme você percebeu abaixo.
//ESSA LINHA ABAIXO EU NÃO ENTENDI!
$newData = date("Y-m-d", mktime(0, 0, 0, $data[0] + $ano, $data[2] + $dias, $data[1] + $meses) );
// aqui você soma o o array $data com a quantidade de meses, anos ou dias que você colocou na função.
//Fiz isso pra eu me orientar
echo "ano:".$data[0]."<BR>";
echo "mes:".$data[1]."<BR>";
echo "dia:".$data[2]."<BR>";
return $newData;
}
echo SomarData(date('Y-m-d'),1);
Eu corrigi a ordem dos índices na parte que faz a soma. Deve funcionar.
Carlos Eduardo
>
Sobre o erro foi falha minha, mas você poderia ter percebido...
function SomarData($data, $ano, $meses, $dias)
Veja que são passados 4 parâmetros para a função e nenhum deles é opcional. O que seria um parâmetro opcional?
function SomarData($data, $dias, $meses = 0, $ano = 0)
Agora os valores $meses e $ano são opcionais.
Vamos explicar a função. Leia os comentários para entender.
function SomarData($data, $dias, $meses = 0, $ano = 0)
{
$data = explode("-", $data);// aqui você separa a $data que foi passada por -, o que vai gerar um array conforme você percebeu abaixo.
//ESSA LINHA ABAIXO EU NÃO ENTENDI!
$newData = date("Y-m-d", mktime(0, 0, 0, $data[0] + $ano, $data[2] + $dias, $data[1] + $meses) );
// aqui você soma o o array $data com a quantidade de meses, anos ou dias que você colocou na função.
//Fiz isso pra eu me orientar
echo "ano:".$data[0]."<BR>";
echo "mes:".$data[1]."<BR>";
echo "dia:".$data[2]."<BR>";
return $newData;
}
echo SomarData(date('Y-m-d'),1);
Eu corrigi a ordem dos índices na parte que faz a soma. Deve funcionar.
Carlos Eduardo
A ordem aqui, pode influenciar??? :mellow:
$newData = date("Y-m-d", mktime(0, 0, 0, $data[0] + $ano, $data[2] + $dias, $data[1] + $meses) );
acho que é ela pois ainda nao deu!
Amigo Matias...
Após muita luta eu consegui obter a data de amanha (prox. dia) no formato yyyy-mm-dd, veja:
//### INICIO ## SABER DATA DE AMANHA ###
$data_hoje=date('d-m-Y');
$data_hoje=explode("-", $data_hoje);
$data_amanha=date("d-m-Y", mktime(0, 0, 0, $data_hoje[1], $data_hoje[0] + 1, $data_hoje[2]));
//Converter formato de dd-mm-yyyy para yyyy-mm-dd
$data_amanha_mysql=explode("-", $data_amanha);
$dia=$data_amanha_mysql[0];
$mes=$data_amanha_mysql[1];
$ano=$data_amanha_mysql[2];
$data_amanha_mysql=$ano."-".$mes."-".$dia;
echo "O dia seguinte é $data_amanha_mysql";
//### FIM ## SABER DATA DE AMANHA ###Matias, obrigadao kra http://forum.imasters.com.br/public/style_emoticons/default/clap.gif , hoje aprendi mais uma... http://forum.imasters.com.br/public/style_emoticons/default/coolio.gif
function SomarData($data, $dias, $meses, $ano)
{
/www.brunogross.com/
//passe a data no formato dd/mm/yyyy
Carlos Eduardo