Jump to content
Fórum Script Brasil
  • 0

Data Em Php


serginhosant
 Share

Question

Fala povo

numa consulta ao bd, tenho uma data já formatada:

assim: $matricula = 28/07/2004

quero acrescentar um dia a esta data

por exemplo: $envio_cd = 29/07/2004

resumindo quero: $envio_cd = $matricula + 1dia

obrigado

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Primeiro você quebra essa data onde tem as "/" com a função explode... aí coloca as variáveis na função mktime() pra acrescentar um dia corretamente (pra que não retorne nenhum resultado como dia 32, por exemplo).

beleza? Tenta aí... qualquer coisa a gente ajuda.

Falou!

Link to comment
Share on other sites

  • 0

ow Illidan eu estou tentando aqui... mas o bicho tá pegando....

fiz assim:

$data_pgto = 28/07/2004

$data = date("M-d-Y", mktime($data_pgto));

$data = explode("-",$data);

$dia=$data[2];

$dia=$dia+1;

$mes=$data[1];

$ano=$data[0];

só que não está funcionando não!!!

Link to comment
Share on other sites

  • 0

Soma datas:

<?php

function somadata($dias,$datahoje){

  if (ereg ("([0-9]{1,2})/([0-9]{1,2})/([0-9]{4})", $datahoje, $sep)) {

  $dia = $sep[1];

  $mes = $sep[2];

  $ano = $sep[3];

  } else {

    echo "<b>Formato Inválido de Data - $datahoje</b><br>";

exit();

  }

  $i = $dias;

  for($i = 0;$i<$dias;$i++){

    if ($mes == "01" || $mes == "03" || $mes == "05" || $mes == "07" || $mes == "08" || $mes == "10" || $mes == "12"){

      if($mes == 12 && $dia == 31){

        $mes = 01;

        $ano++;

        $dia = 00;

      }

    if($dia == 31 && $mes != 12){

      $mes++;

      $dia = 00;

    }

  }

  if($mes == "04" || $mes == "06" || $mes == "09" || $mes == "11"){

    if($dia == 30){

      $dia = 00;

      $mes++;

    }

  }

  if($mes == "02"){

    if($ano % 4 == 0 && $ano % 100 != 0){ //ano bissexto

      if($dia == 29){

        $dia = 00;

        $mes++;     

      }

    }

    else{

      if($dia == 28){

        $dia = 00;

        $mes++;

      }

    }

  }

  $dia++;

  }

  if(strlen($dia) == 1){$dia = "0".$dia;};

  if(strlen($mes) == 1){$mes = "0".$mes;};

$resultado = "$dia/$mes/$ano";

return $resultado;

}

//coloque o numero de dias pra somar com a data atual

$dias = 5;//exemplo soma + 5 dias

$datahoje = date("d/m/Y"); 28/07/2004

$resultado = somadata($dias, $datahoje);

echo $resultado; 02/08/2004

?>

Link to comment
Share on other sites

  • 0

ow Illidan eu estou tentando aqui... mas o bicho tá pegando....

fiz assim:

$data_pgto = 28/07/2004

$data = date("M-d-Y", mktime($data_pgto));

$data = explode("-",$data);

$dia=$data[2];

$dia=$dia+1;

$mes=$data[1];

$ano=$data[0];

só que não está funcionando não!!!

Então, cara... você pode fazer assim:

$data_pgto = 28/07/2004;

$data = explode("/", $data_pgto);

$envio_cd = date("d/m/Y", mktime(0, 0, 0, $data[1], ($data[0]+1), $data[2]));

Falou! wink.gif

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.7k
    • Total Posts
      648.4k
×
×
  • Create New...