Ver Mensaje Individual
  #14 (permalink)  
Antiguo 28/02/2007, 09:18
El Patrón.
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: tratamiento fechas

Bueno viktoria, para que comprendas mejor te envio esto
y te comento que lo que pasa es que cuando se usa la funcion date, y se usa el parametro w, que trae el numero del dia de la semana, esa funcion funciona como un arreglo, es decir, su primer elemento es 0 lo que para nosotros seria 1, y por eso es que no te cuadra el dia que te arroja el sistema con el que tu cuentas normalmente

Soluciones:


1. Crear un array asi

$dias = array("Domingo","Lunes",.......);
Donde la posicion de Domingo en el array es 0 y por ende tendrias que imprimir es el array

2. usar date l que trae el nombre del dia (en ingles) y asi por ej traeria Sunday, y entonces te tocaria si vas a usarlo asi y traducirlo, pues nada mas facil que un array asociativo, asi

$dias2 = array("Sunday"=>"Domingo",.....);
y a la hora de imprimirlo seria echo $dias2[$nombredia]; donde $nombredia captura el nombre del dia en ingles con la función date

3. si no quieres usar nada de eso, captura el numero del dia con w y ya pero tendrias que ponerle una condicion que cuando sea 0 pues $numdia se convierta en 7
Código PHP:

//El domingo es 0 y el sabado es 6
//con w numero del dia y con l nombre del dia
$dias = array("Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado");
$dia 4
$mes 02
$anio 2007
$nombredia date("l"mktime(000$mes$dia$anio));
$numdia date("w"mktime(000$mes$dia$anio));
echo 
$nombredia;
echo 
'<br>';
echo 
$numdia;
echo 
'<br>';
echo 
$dias[$numdia]; 
Espero os sirva

Suerte