Foros del Web » Programando para Internet » PHP »

funcion paso fecha, devuelve dia

Estas en el tema de funcion paso fecha, devuelve dia en el foro de PHP en Foros del Web. Hola, alguien tiene o sabe como hacer una función en php a la que le paso una fecha con formato (DD/MM/YYYY) o (YYYY/MM/DD) como parámetro ...
  #1 (permalink)  
Antiguo 15/09/2006, 08:52
 
Fecha de Ingreso: agosto-2006
Mensajes: 11
Antigüedad: 17 años, 8 meses
Puntos: 0
funcion paso fecha, devuelve dia

Hola, alguien tiene o sabe como hacer una función en php a la que le paso una fecha con formato (DD/MM/YYYY) o (YYYY/MM/DD) como parámetro y me devuelve el dia de la semana que es??
Ej si le paso '15/09/2006' que devuelva 'VIERNES'

Muchas Gracias!!!
Sandra
  #2 (permalink)  
Antiguo 15/09/2006, 09:28
Avatar de the_scorpion  
Fecha de Ingreso: mayo-2006
Ubicación: Cuba
Mensajes: 696
Antigüedad: 17 años, 11 meses
Puntos: 3
Hola

No se si esto te sirva de algo
Código PHP:
switch ( date(w) ) {
 case 
'0':
 
$dia="Domingo";
 break;
 case 
'1':
 
$dia="Lunes";
 break;
 case 
'2':
 
$dia="Martes";
 break;
 case 
'3':
 
$dia="Miercoles";
 break;
 case 
'4':
 
$dia="Jueves";
 break;
 case 
'5':
 
$dia="Viernes";
 break;
 case 
'6':
 
$dia="Sábado";
 break;
 }
$date date("d/m/Y"); 
$fecha $dia.", ".$date;
 echo 
$fecha
__________________
Que hablen mal de uno es espantoso. Pero hay algo peor: que no hablen.
Quien hace, puede equivocarse. Quien nada hace, ya está equivocado".
  #3 (permalink)  
Antiguo 15/09/2006, 09:45
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 5 meses
Puntos: 11
O prueba esto:

Código PHP:
<?php
    
//la funcion recibe el parametro fecha en el formato indicado
    //si no se pasa un parametro asume la fecha de hoy 15/09/2006
    
function fRecibeFechaRetornaDia($fecha="15/09/2006")
    {
        
//el primer dia de la semana en ingles es el domingo
        
$semana=array("DOMINGO","LUNES","MARTES","MIERCOLES","JUEVES","VIERNES","SABADO");
        list(
$dia,$mes,$ano)=explode("/",$fecha);
        
//date("w") devuelve la posicion del dia de la semana
        
$posdia=date("w",mktime(0,0,0,$mes,$dia,$ano));
        return 
$semana[$posdia];
    }
    
//este echo es sólo es para probar que funciona
    
echo fRecibeFechaRetornaDia();
?>
  #4 (permalink)  
Antiguo 15/09/2006, 09:45
Avatar de seik!  
Fecha de Ingreso: mayo-2006
Mensajes: 492
Antigüedad: 17 años, 10 meses
Puntos: 6
yo lo hago asi

con el formato de la variable ..

Código:
//es una fecha cualkiera
$intfecha = 31/12/2006


//rescato por dias mes y año que trae la fecha...
$intdia = substr($intfecha, 0, 2) ;	
$intmes = substr($intfecha, 4, 1);  
$intano = substr($intfecha, 6, 4); 

//uno todos los  parametros con el formato de la funcion de sql DATE (mm/dd/yy)
$strnueva_fecha	=  date("l",mktime(0, 0, 0,$intmes, $intdia, $intano));
//creo los dias ... debido a la funcion que ocupamos que  solo trae dias en ingles, generamos dias de la semana
$lunes = "Monday";
$martes = "Tuesday";
$miercoles = "Wednesday";
$jueves = "Thursday";
$viernes = "Friday";
$sabado = "Saturday";
$domingo = "Sunday";

//luego imprimes la variable que trae el  dia de la semana...

a mi me funciona perfecto... ahora el codigo nose si te funcione bien por lo copie a la rapida... espero no falte nada... intentalo ... puede ser que los subtring no esten bien...

ese es mi aporte xD!
__________________
sEIK! -Chile-
Analista Programador.
  #5 (permalink)  
Antiguo 15/09/2006, 09:57
Avatar de Erikfrancisco  
Fecha de Ingreso: noviembre-2003
Ubicación: Estado de México
Mensajes: 503
Antigüedad: 20 años, 4 meses
Puntos: 4
Haquí te va una más:

<?php
$fecha = "15/09/2006";
$partes = explode ("/", $fecha);
$dia = $partes[0];
$mes = $partes[1];
$ano = $partes[3];

$calcula = mktime ( 0, 0, 0, date("$mes"), date("$dia"), date("$anio"));

$dias = array ( 'Domingo', 'Lunes', 'Martes', 'Miercoles', 'Jueves', 'Viernes', 'Sábado', );

echo $dias[(int)date('w',$calcula)];
?>

Suerte
  #6 (permalink)  
Antiguo 17/09/2006, 15:56
 
Fecha de Ingreso: agosto-2006
Mensajes: 11
Antigüedad: 17 años, 8 meses
Puntos: 0
Muchas gracias!!!

Muchas gracias a todos por sus aportes, me sirvieron un montón!!!
Finalmente usé el mktime y con eso anduvo bárbaro!!
Gracias nuevamente a todos!!!!!!!!!
Sandra
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 22:32.