que me gustaría saber si hay una carta de formato para PHP de date()
que me permite imprimir minutos sin ceros a la izquierda, o si tengo que probar manualmente y eliminar líder ceros?PHP date(): minutos sin ceros a la izquierda
Respuesta
Uso:
$minutes = intval(date('i'));
¡Comportamiento loco de PHP! Trata el int '09' como un número octal debido al cero inicial - que evaluará a' 0' ya que '9' no es un número octal válido. Pero trata la cadena '09' como el entero decimal' 9'. Adiós comportamiento esperado! :) – hek2mgl
Es mejor usar '(int) date ('i');' en lugar de 'intval()'. Se supone que es mucho más rápido. – KoviNET
no se parece a ella, pero que podría ser algo así como ...
echo date('g:') . ltrim(date('i'), '0');
alternativa, puede emitir la segunda llamada a date()
con (int)
.
¡Impresionante! Me alegra que sea tan simple. Gracias. – Bojangles
De acuerdo con la PHP Documentation, la función date()
no tiene un marcador de posición para minutos y sin ceros a la izquierda.
Sin embargo, puede obtener esa información simplemente multiplicando las fechas, con un cero inicial, por 1, convirtiéndolo en un número entero.
$minutesWithoutZero = 1* date('i');
Eso funcionará, pero es un poco más complicado que simplemente '(int)'. – alex
Es cierto. Solo uso malos hábitos viejos recogidos en mis días de javascript. –
+1 para la nueva solución Lucanos. Gracias. He ido con la respuesta de 'Hippo' debido a su simplicidad y no-hackiness ;-P – Bojangles
O en MySQL simplemente se multiplica por 1, como por ejemplo:
select f1, ..., date_format(fldTime , '%i') * 1 as myTime, ..., ...
No pedí una solución MySQL, pero gracias por la alternativa, lo tendré en cuenta para el formato relacionado con MySQL. – Bojangles
He intentado encontrar esto por segundo, así, renunció a la búsqueda y acaba de emitir el resultado como un int como este:
echo (int)date("s");
Eso eliminará los principales cero de una manera rápida y eficiente.
$current_date = Date("n-j-Y");
echo $current_date;
// Result m-d-yy
9-10-2012
el OP está buscando minutos, no un formato de fecha estándar –
Para veces con más información que sólo unos minutos:
ltrim()
- Elimina espacios en blanco (u otros caracteres) desde el principio de una cadena
ltrim(date('i:s'), 0);
devuelve:
8:24
esto no funciona en tiempos inferiores a 1 minuto ... por ejemplo: 00:24 daría como resultado: 24 –
Encaja perfectamente en mi función (..'elseif ($ duración <= 3599 && $ duración> 59) {'..) –
Uso este formato si necesito un formato XXmXXs:
//Trim leading 0's and the 'm' if no minutes
ltrim(ltrim(gmdate("i\ms\s", $seconds), '0'), 'm');
Esta salida voluntad la siguiente:
12m34s
1m23s
12s
¡Impresionante! Aún mejor que la solución @ScottA. Este es mi código (también con horas) 'print ltrim (gmdate (" H \ hi \ ms \ s ", $ duration), '0mh');' –
acabo de hacer esta solución una línea
$ min = intval (fecha ('i', strtotime (fecha $)));
El uso del método ltrim puede eliminar todos los ceros a la izquierda. Por ejemplo, si '00' min. En este caso, esto eliminará todos los ceros y le dará un resultado vacío.
Mi solución:
function seconds2string($seconds) {
if ($seconds == 0) {
return '-';
}
if ($seconds < 60) {
return date('0:s', $seconds);
}
if ($seconds < 3600) {
return ltrim(date('i:s', $seconds), 0);
}
return date('G:i:s', $seconds);
}
Esta es la salida:
0 seconds: -
10 seconds: 0:10
90 seconds: 1:30
301 seconds: 5:01
1804 seconds: 30:04
3601 seconds: 1:00:01
Un polvo rápido de mí. Dime lo que piensas:
<?php function _wo_leading_zero($n) {
if(!isset($n[1])) return $n;
if(strpos($n, '.') !== false) {
$np = explode('.', $n); $nd = '.';
}
if(strpos($n, ',') !== false) {
if(isset($np)) return false;
$np = explode(',', $n); $nd = ',';
}
if(isset($np) && count($np) > 2) return false;
$n = isset($np) ? $np[0] : $n;
$nn = ltrim($n, '0');
if($nn == '') $nn = '0';
return $nn.(isset($nd) ? $nd : '').(isset($np[1]) ? $np[1] : '');
}
echo '0 => '._wo_leading_zero('0').'<br/>'; // returns 0
echo '00 => '._wo_leading_zero('00').'<br/>'; // returns 0
echo '05 => '._wo_leading_zero('05').'<br/>'; // returns 5
echo '0009 => '._wo_leading_zero('0009').'<br/>'; //returns 9
echo '01 => '._wo_leading_zero('01').'<br/>'; //returns 1
echo '0000005567 => '._wo_leading_zero('0000005567').'<br/>'; //returns 5567
echo '000.5345453 => '._wo_leading_zero('000.5345453').'<br/>'; //returns 0.5345453
echo '000.5345453.2434 => '._wo_leading_zero('000.5345453.2434').'<br/>'; //returns false
echo '000.534,2434 => '._wo_leading_zero('000.534,2434').'<br/>'; //returns false
echo date('m').' => '._wo_leading_zero(date('m')).'<br/>';
echo date('s').' => '._wo_leading_zero(date('s')).'<br/>'; ?>
- 1. Mes sin ceros a la izquierda en Android
- 2. Expresión regular para los números sin ceros a la izquierda
- 3. Entero con ceros a la izquierda
- 4. número Display con ceros a la izquierda
- 5. int.Parse() con ceros a la izquierda
- 6. ceros a la izquierda en raíles
- 7. ¿Cómo incrementar un valor con ceros a la izquierda?
- 8. Uso de expresiones regulares para agregar ceros a la izquierda
- 9. Eliminar los ceros a la izquierda de la fecha abreviada con PHP
- 10. Cuente ceros a la izquierda en un Int32
- 11. JSTL relleno int con ceros a la izquierda
- 12. Ceros a la izquierda en el plugin JQuery Countdown Clock
- 13. printf con ceros a la izquierda en C
- 14. Cadena de formato, número entero con ceros a la izquierda
- 15. contadores css anidadas con ceros a la izquierda
- 16. ¿Cómo puedo generar ceros a la izquierda en Ruby?
- 17. PHP Date Recurrence Library?
- 18. PHP eliminar primeros ceros
- 19. PHP Date String Format
- 20. Imprimir ceros a la izquierda con operador de salida C++ (equivalente a printf)?
- 21. ¿Convierte int (número) a una cadena con ceros a la izquierda? (4 dígitos)
- 22. Eliminación de ceros a la izquierda antes de pasar una variable de shell a otro comando
- 23. Convertir un int a un QString con cero relleno (ceros a la izquierda)
- 24. Dar formato a un número que contiene un punto decimal con ceros a la izquierda
- 25. agregando 30 minutos a datetime php/mysql
- 26. ¿Cómo puedo ver la hora con los ceros a la izquierda?
- 27. php get future date time
- 28. Advanced Date-Validation con PHP
- 29. PHP - date() vs. date.timezone/date_default_timezone_set()
- 30. ¿Por qué se usan ceros a la izquierda para representar números octales?
¿Puedo preguntar por qué demonios no hay minutos sin ceros ??? – Jackt