Todas las opciones para formatear las fechas las puedes encontrar en:
Fecha actual formateada
function fecha(){
return date('d-m-Y', time());
}
Formatear una fecha
$fechainicial = "2010-03-21";
$fechaformateada = date("d-m-Y", strtotime($fechainicial));
Obtener el número de día de la semana
function diasemana($fecha){
$date = new DateTime($fecha);
return $date->format("W");
}
Convertir a horas y minutos
function convertirHorasMinutos($time, $format = '%02d:%02d') {
if ($time < 1)
return;
$hours = floor($time / 60);
$minutes = ($time % 60);
return sprintf($format, $hours, $minutes);
}
Diferencia entre 2 fechas
function dateDiff($date1, $date2){
$datetime1 = new DateTime($date1);
$datetime2 = new DateTime($date2);
$interval = $datetime1->diff($datetime2);
return $interval->format('%H:%I');
}
Comprobar si una fecha ya ha pasado
if(strtotime(dateString) > time()) {
# La fecha dada será un futuro
}
if(strtotime(dateString) < time()) {
# La fecha ya ha pasado
}
if(strtotime(dateString) == time()) {
# La fecha es ahora
}
Calcular la edad
function edad($date){
$time = strtotime($date);
if($time === false){
return '';
}
$year_diff = '';
$date = date('Y-m-d', $time);
list($year,$month,$day) = explode('-',$date);
$year_diff = date('Y') - $year;
$month_diff = date('m') - $month;
$day_diff = date('d') - $day;
if ($day_diff < 0 || $month_diff < 0) $year_diff-;
return $year_diff;
}
Cuenta atrás de una fecha
$dt_end = new DateTime('December 3, 2016 2:00 PM');
$remain = $dt_end->diff(new DateTime());
echo $remain->d . ' days and ' . $remain->h . ' hours';
Visto en Stack Overflow