PHP - Aumentar un dia a una fecha

   
Vista:

Aumentar un dia a una fecha

Publicado por Octavio (8 intervenciones) el 10/09/2012 07:04:05
Hola a todos, soy nuevo en PHP y estoy haciendo algo que no me sale...
Google y probé pero después de varias horas me doy por vencido...

lo que intento hacer es lo siguiente:

Tengo 2 variables:

1
2
$desde = new DateTime('2012-09-10');
$cantDias = x; (esta tiene un valor entero indefinido)


tengo una tabla ($tabla) con x filas y 9 columnas. En cada una de las primeras columnas debo poner el día de la semana seguido del día del mes por ejemplo:

Lunes 10
Martes 11
etc.

eso lo intente hacer con la siguiente función:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function cargarDias(){
	global $tabla, $desde, $cantDias;
	$diasSemana = array(Domingo,Lunes,Martes,Miercoles,Jueves,Viernes,Sabado);
 
        // ACA debería ser $siguiente = &desde; NO SE COMO HACERLO
 
	for($i = 0; $i < $cantDias; $i++){
		$dia = $diasSemana[date(N, strtotime($siguiente))];
		echo "El día de la fecha = ".date("d-m-Y", strtotime($siguiente))." es: ".$dia."<br>";
		$diaNum = date("d", strtotime($siguiente));
		$diaTabla = $dia." ".$diaNum;
		if ($mes == 0){
			$diaTabla .= "/".date("m/Y", strtotime($siguiente));
		}
		$tabla[$i]['Dia'] = $tabla[$i]['Dia']." ".$diaTabla;
 
               //ACA se le sumaria un día a $siguiente NO SE COMO HACERLO
 
	}
}


La función no anda porque me falta saber como se hace para clonar el $desde en $siguiente y como aumentar un día a $siguiente....

$desde no se puede modificar NUNCA !!

Espero puedan ayudarme

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Aumentar un dia a una fecha

Publicado por xve (5515 intervenciones) el 10/09/2012 07:50:37
Hola Octavio, para ello, te recomiendo que utilices la función strtotime()... por ejemplo:

Esto nos da el día actual:
1
echo date("d");

para aumentar un día a la fecha actual:
1
echo date("d",strtotime("+1 day"));

Si queremos visualizar la fecha y aumentar por ejemplo una semana:
1
echo date("d/m/Y",strtotime("+1 week"));

Si quisiéramos ir al siguiente lunes:
1
echo date("d/m/Y",strtotime("next monday"));


En la pagina de php encontraras mas info: http://php.net/manual/es/function.strtotime.php

Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Aumentar un dia a una fecha

Publicado por octavio (8 intervenciones) el 10/09/2012 15:30:55
Amigo en realidad no necesito nada del día actual, el día siguiente lo necesito de la variable siguiente es decir el día que le sigue a $siguiente.

Es decir que lo que me falta es:

$siguiente = $desde; o algo así para que siguiente tome la fecha de $desde pero sin que haga referencia a desde, sino que sea un nuevo día.

y luego poder obtener el siguiente día de $siguiente (NO DEL DÍA ACTUAL).

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Aumentar un dia a una fecha

Publicado por xve (5515 intervenciones) el 10/09/2012 16:42:59
Para obtener el siguiente dia a una fecha dada, puedes hacerlo así:
1
$siguiente=date("d-m-Y",strtotime("2012-08-31")+86400);

te devolverá (84600 son los segundos que tiene un día):
01-09-2012

Espero que ahora si te sirva... coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Aumentar un dia a una fecha

Publicado por octavio (8 intervenciones) el 10/09/2012 17:14:49
Ahora pruebo a ver si me sirve...

deberia usarlo así como...

$siguiente=date("d-m-Y",strtotime($siguiente)+86400);

puede hacerse de esa manera?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Aumentar un dia a una fecha

Publicado por Octavio (8 intervenciones) el 10/09/2012 20:00:02
Gracias a todos los que comentaron.
Lo solucione de esta manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function cargarDias(){
	global $tabla, $desde, $cantDias;
	//echo $desde."";
	$diasSemana = array(Domingo,Lunes,Martes,Miercoles,Jueves,Viernes,Sabado,Domingo);
	$siguiente=date("Y-m-d",strtotime(date_format($desde, 'Y-m-d'))+0);
	for($i = 0; $i < $cantDias; $i++){
		$dia = $diasSemana[date(N, strtotime($siguiente))];
		$diaNum = date("d", strtotime($siguiente));
		$diaTabla = $dia." ".$diaNum;
		if ($mes == 0){
			$diaTabla .= "/".date("m/Y", strtotime($siguiente));
		}
		$tabla[$i]['Dia'] = $diaTabla;
		$siguiente=date("Y-m-d",strtotime($siguiente)+86400);
	}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Marco Antonio

Aumentar un dia a una fecha

Publicado por Marco Antonio (1 intervención) el 11/03/2016 17:44:50
ME SIRVIO MUCHO TU SEGMENTO DE CODIGO, GRACIAS POR EL POST
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar