Foros del Web » Programando para Internet » PHP »

poner fecha en php

Estas en el tema de poner fecha en php en el foro de PHP en Foros del Web. Hola, tengo el siguiente codigo <?php $sdate=date("d")."/".date("m")."/".date("Y"); $stime=date("h").":".date("i"); ?> Eso me muestra la fecha dd/mm/aaaa, bien hasta ahi, pero quiero que me salga Miercoles 15 ...
  #1 (permalink)  
Antiguo 14/10/2003, 16:03
 
Fecha de Ingreso: febrero-2003
Mensajes: 101
Antigüedad: 21 años, 2 meses
Puntos: 0
poner fecha en php

Hola, tengo el siguiente codigo

<?php
$sdate=date("d")."/".date("m")."/".date("Y");
$stime=date("h").":".date("i");
?>


Eso me muestra la fecha dd/mm/aaaa, bien hasta ahi, pero quiero que me salga Miercoles 15 de Octubre de 2003, sabeis no? se que en asp es con un select case y se define el numero del mes con el nombre, pero es que en php no tengo ni idea, alguien me puede hechar una mano?
Saludos
  #2 (permalink)  
Antiguo 14/10/2003, 16:30
Avatar de McManaman  
Fecha de Ingreso: agosto-2003
Ubicación: Ecuador - Guayaquil
Mensajes: 119
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola

CODIGO DESCRIPCIÓN
a am o pm
A AM o PM
d Día del mes con ceros
D Abreviatura del día de la semana (inglés)
F Nombre del mes (inglés)
h Hora en formato 1-12
H Hora en formato 0-23
i Minutos
j Día del mes sin ceros
l Dia de la semana
m Número de mes (1-12)
M Abreviatura del mes (inglés)
s Segundos
y Año con 2 dígitos
Y Año con 4 dígitos
z Dia del año (1-365)

date("d-m-Y") -> 07-04-2000

date("H:i:s") -> 14:30:22

date("Y") -> 2000

date("YmdHis") -> 20000407143022

date("d/m/y H:i a") -> 07/04/00 14:30 pm

date(d-m-Y H:i, time()) -> el momento actual

Justo estaba revisando esto en un manual....

http://es.tldp.org/Manuales-LuCAS/ma...empo_fecha.htm

Chau
__________________
...Hay unos que saben TODO de nada y otros que saben NADA de TODO... think about it
  #3 (permalink)  
Antiguo 14/10/2003, 19:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Para mostar los meses y dias de la semana con el formato que deseas .. lo ideal es usar un array para los días de la semana y otro para los meses .. Usando las funciones date() para obtener el dia de la semana (en ordinal) y el del mes .. lo podemos usar como indices de estos arrays (dias y meses) para componer la fecha en formato "carta" ..

Ahora no tengo el código a la mano .. pero si usas el buscador seguro que saldrá (y várias alternativas ..)


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 15/10/2003, 10:38
 
Fecha de Ingreso: febrero-2003
Mensajes: 101
Antigüedad: 21 años, 2 meses
Puntos: 0
Hola Cluster, me podrias poner un ejemplo?
Gracias

Saludos
  #5 (permalink)  
Antiguo 17/10/2003, 06:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Puedes ver un ejemplo en:
http://www.hackingballz.com/articulos.php?articulo=32

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 17/10/2003, 09:16
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
Pues yo aqui les comparto una funcion que hice para usar la función date(); con formato en español...

Se usa IGUALITO que date, solo que con la ventaja de que el input puede ser en formato de fecha de MySQL (20031016) o un time (mktime) o nada (), y el formato sigue las mismas reglas que la función date();

Código PHP:
function date_es($formato="F j, Y",$fecha=0) {
    if (
ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})"$fecha,$partes)) {
        if (
checkdate($partes[2],$partes[3],$partes[1])) {
            
$fecha=strtotime($fecha);
        } else {
            return(-
1);
        }
    } elseif (
$fecha==0) {
        
$fecha=time();
    }
    
$dias=array("Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado");
    
$dias_c=array("Dom","Lun","Mar","Mie","Jue","Vie","Sab");
    
$meses=array("","Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
    
$meses_c=array("","Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic");

    
$valores=explode("|",date ("a|A|B|d|D|F|g|G|h|H|i|I|j|l|L|m|M|n|O|r|s|S|t|T|U|w|W|Y|y|z|Z",$fecha));
    
$claves= array ("a","A","B","d","D","F","g","G","h","H","i","I","j","l","L","m","M","n","O","r","s","S","t","T","U","w","W","Y","y","z","Z");
    for (
$i=0;$i<count($claves);$i++) {
        
$conv[$claves[$i]]=$valores[$i];
    }
    
$conv["D"]=$dias_c[$conv["w"]];
    
$conv["l"]=$dias[$conv["w"]];
    
$conv["F"]=$meses[$conv["n"]];
    
$conv["M"]=$meses_c[$conv["n"]];
    
$conv["r"]=$conv["D"].", ".$conv["d"]." ".$conv["M"]." ".$conv["Y"]." ".$conv["H"].":".$conv["i"].":".$conv["s"]." ".$conv["O"];
    
$conv["S"]="o";
    
$escape='\\\\\\';
    
$escapado=0;
    
$f=$formato;
    
$res="";
    for (
$t=0;$t<strlen($formato);$t++) {
        if (
$escapado==1) {
            
$res.=$f{$t};
            
$escapado=0;
        } else {
            if(
$f{$t}==$escape) {
                
$escapado=1;
            } else {
                if (isset(
$conv[$f[$t]])){
                    
$res.=$conv[$f[$t]];
                } else {
                    
$res.=$f{$t};
                }
            }
        }
    }
    return 
$res;

__________________
Manoloweb

Última edición por Manoloweb; 17/10/2003 a las 09:22
  #7 (permalink)  
Antiguo 17/10/2003, 09:19
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
Para usarse haces algo así:

Código PHP:
include ("misfunciones.php"); // Archivo donde guardaste la funcion
echo date_es("l d \\de F \\de Y");


// Eso te devuelve: "Viernes 17 de Octubre de 2003 " 
__________________
Manoloweb
  #8 (permalink)  
Antiguo 17/10/2003, 13:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Manoloweb .. subelo a las FAQ's (tu función date_es() ..) sería interesante tenerla por allá.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 17/10/2003, 15:04
 
Fecha de Ingreso: febrero-2003
Mensajes: 101
Antigüedad: 21 años, 2 meses
Puntos: 0
Hola Manoloweb, lo que pusiste arriba lo meto en una pagina php? digamos como si fuese un modulo donde guardo todo y luego hago la llamada donde quiero que salga no? digamos como una pagina css no?, hay que hacer tanta historia para poner la fecha y que se actualice automaticamente?

Saludos y gracias
  #10 (permalink)  
Antiguo 17/10/2003, 15:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
movisoft .. si dices "tanta historia" .. mala cosa .. en fin te lo dan hecho ..y ... bueno .....

Si quieres la fecha en españól en ese formato (tipo "carta") eso es lo que debes usar .. o bien algo más reducido como el ejemplo que te dejé en e link de uno de mis mensajes de este tema.

Ese código lo puedes usar en un archivo aparte y lo llamas en tus scritps via un include("misfunciones.php"); (como te dió el ejemplo Manoloweb) por ejemplo .. Así lo usas y reusas las veces que lo necesites .. sin tener que meter el "chorizo" código en todas las páginas que quieras presentar o usar ese formato de fecha.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #11 (permalink)  
Antiguo 17/10/2003, 16:44
 
Fecha de Ingreso: febrero-2003
Mensajes: 101
Antigüedad: 21 años, 2 meses
Puntos: 0
Hola, muchas gracias, es que no se lo veia tan largo para una fecha, lo digo por que en ASP es mucho mas corto, son unas cuantas lineas de nada, y como me habian dicho que en php es mas facil y mas corto el codigo y tal... en fin mientras funcione bien

Salu2
  #12 (permalink)  
Antiguo 17/10/2003, 17:14
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
No creo que se pueda comparar ASP con PHP en ese sentido.

Creo que mas bien se trata de estilos de programación.

Existen formas mucho mas simples para mostrar la fecha en español, pero particularmente esta implementación es para emular el resultado que se obtiene con la funcion date() nativa de PHP, por eso es mas largo.

__________________
Manoloweb
  #13 (permalink)  
Antiguo 17/10/2003, 19:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No quiero entrar en polémicas .. pero No se puede comparar y judgar a dos lenguajes por unas líenas de código de más .. En algunas cosas serán unas cuantas líenas de mas en PHP .. en otras ocasiones será al reves.

Y lo principal no es si tienes 10 o 2 líenas de código .. sino que tal optimo sea (a nivel rendimiento) ..etc .. etc ..


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 15:53.