Foros del Web » Programando para Internet » PHP »

Array dias semana actual

Estas en el tema de Array dias semana actual en el foro de PHP en Foros del Web. Hola, me gustaria que me ayudasen guiandome como podria colocar en un array los dias de la semana actual que serian 7 para luego juntarlos ...
  #1 (permalink)  
Antiguo 19/03/2016, 20:42
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 13 años, 4 meses
Puntos: 13
Pregunta Array dias semana actual

Hola, me gustaria que me ayudasen guiandome como podria colocar en un array los dias de la semana actual que serian 7 para luego juntarlos con los datos de la tabla que cree.

Código:
<?php 

//dias de la semana arreglo
$diasem = array('1'=>'Lunes', '2'=>'Martes', '3'=>'Miercoles', '4'=>'Jueves', '5'=>'Viernes', '6'=>'Sabado', '7'=> 'Domingo');

?>


<table border="1" id="tabla" align="center" >
  <thead>
  <tr>
  <th><i class="fa fa-clock-o"></i> HORA</th>
  <?php foreach ($diasem as $numero => $dia){ 
  echo "<th> $dia </th>";
  }?>
  </tr>
  </thead>
  
</table>
Como se daran cuenta he creado una tabla que muestra los dias de la semana, lo que yo quiero es crear un array con los 7 dias actuales, es decir las fechas de la semana, por ejemplo si hoy es 3 de marzo, entonces obtener la semana del 3 de marzo y juntar el dia con mi tabla, si el 3 de marzo es jueves entonces iria al jueves de mi tabla, lo unico que se le añadia es el 3 al jueves que ya existe en la tabla que tengo y asi a los otros dias.

Tenia pensado en obtener de la fecha actual el numero de dia de la semana con el caracter 'N', pero solo obtengo el dia actual y quisiera obtener los dias anteriores y siguientes.

Espero haberme dado entender y me guien un poco.

Grcias desde ya y SALUDOS.
  #2 (permalink)  
Antiguo 20/03/2016, 08:07
Avatar de edgaralexanderfr  
Fecha de Ingreso: julio-2014
Ubicación: Caracas
Mensajes: 12
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Array dias semana actual

Hola,

Lo que puedes hacer es determinar el tiempo inicial que le corresponda al día lunes, para ello puedes agarrar el día actual como lo habías dicho, restarle 1, multiplicarlo por 86400 (lo que equivale a 1 día en segundos) y posteriormente restarle a la fecha actual ese valor.

Luego para mostrar los días simplemente agregas un bucle adicional al que tenías y muestras la fecha con el formato deseado pasando el tiempo acumulado como parámetro e incrementas el tiempo en 86400:

Código PHP:
<?php 

//dias de la semana arreglo
$diasem = array('1'=>'Lunes''2'=>'Martes''3'=>'Miercoles''4'=>'Jueves''5'=>'Viernes''6'=>'Sabado''7'=> 'Domingo');
// Determinas el tiempo inicial
$tiempo time() - ((((int) date('N')) - 1) * 86400);

?>


<table border="1" id="tabla" align="center" >
  <thead>
  <tr>
  <th><i class="fa fa-clock-o"></i> HORA</th>
  <?php foreach ($diasem as $numero => $dia){ 
  echo 
"<th> $dia </th>";
  }
?>
  </tr>
  <tr>
  <th><i class="fa fa-clock-o"></i> 00:00</th>
  <?php foreach ($diasem as $numero => $dia){ 
  echo 
"<th> " date('d'$tiempo) . " </th>";
  
  
$tiempo += 86400;
  }
?>
  </tr>
  </thead>
  
</table>
Un saludo y suerte...

Etiquetas: dias, semana, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:14.