Ver Mensaje Individual
  #21 (permalink)  
Antiguo 19/01/2012, 15:06
Avatar de function
function
 
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 16 años, 4 meses
Puntos: 13
Respuesta: desplear dias de la semana en concordancia

ok Entonces para simplificar el tema e irme ordenando:

Tenemos sacados los dias con las fechas: para no depender de los locales, podriamos hacerlo en un array y asi traducirlo y no depender del setting del server.

Con locales
Código PHP:
setlocale(LC_ALL,"es_ES","esp");
//Si es lunes calculamos a partir de la fecha actual
if(date('w') == 1) {
    
$ul = time();
} else {
    
$ul = strtotime('last monday');
}
//Bucle para mostrar los 7 dias de la semana
for($i=0;$i<7;$i++){
    
$sd = strtotime("+$i day", $ul);
    if(
date('d', $sd) === date('d')) {
        echo 
'<font color="red">'.strftime("%A, %d", $sd).'</font> ';
    } else {
        echo 
'<font color="gray">'.strftime("%A, %d", $sd).'</font> ';        
    }
} 
sin locales y en array
Código PHP:
//Si es lunes calculamos a partir de la fecha actual
if(date('w') == 1) {
    
$ul = time();
} else {
    
$ul = strtotime('last monday');
}
//Array con los dias de la semana
$dias_semana = array('Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sabado', 'Domingo');
//Bucle para mostrar los 7 dias de la semana
for($i=0;$i<7;$i++){
    
$sd = strtotime("+$i day", $ul);
    if(
date('d', $sd) === date('d')) {
        echo 
'<font color="red">'.$dias_semana[$i].''.date("d", $sd).'</font> ';
    } else {
        echo 
'<font color="gray">'.$dias_semana[$i].''.date("d", $sd).'</font> ';        
    }
} 
Ahora como hacer para que vaya entre semanas, semana anterior y semana siguiente, podria ser asi:
Código PHP:
//calcular semana anterior
$semana_ant = date('W')-1;
//calcular semana siguiente
$semana_sig = date('W')+1; 
Por ahí voy bien encaminado?
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar