<?php function parseTiempo($delimitador, $cadena) { $array = explode("{$delimitador}", $cadena); $res_array = []; foreach ($array as $valor) { $res_array[] = intval($valor); } return $res_array; } $fechaActual = getdate(); $anyoActual = $fechaActual['year']; $mesActual = $fechaActual['mon']; $diaActual = $fechaActual['mday']; $fechaNacimiento = parseTiempo('/', $_POST['fechaNac']); $anyoNacimiento = $fechaNacimiento[2]; $mesNacimiento = $fechaNacimiento[1]; $diaNacimiento = $fechaNacimiento[0]; $years = $anyoActual - $anyoNacimiento - 1; //-1 por si en el año actual aún //no ha cumplido años. if ($mesActual > $mesNacimiento) { $years++; } elseif ($mesActual == $mesNacimiento && $diaActual >= $diaNacimiento) { $years++; } echo $years;
return $res_array; } function calcularRitmo($distancia, $tiempo) { $ritmo = []; for ($i = 0; $i < count($tiempo); $i++) { $ritmo[] = floor($tiempo[$i] / $distancia); if ($i + 1 < count($tiempo)) { $tiempo[$i + 1] += $tiempo[$i] % $distancia * 60; } } return $ritmo; } function timeString($vectorTiempo) { $vectorCadenas = []; foreach ($vectorTiempo as $valor) { if ($valor < 10) { $vectorCadenas[] = "0" . strval($valor); } else { $vectorCadenas[] = strval($valor); } } return "{$vectorCadenas['0']}:{$vectorCadenas['1']}:{$vectorCadenas['2']}"; } $distancia = floatval($_POST['distancia']) / 1000; $tiempo = parseTiempo($_POST['tiempo']); $ritmo = calcularRitmo($distancia, $tiempo); echo "Distancia total de {$distancia} Km"; echo "<br />"; echo "Ritmo: " . timeString($ritmo) . " por Km.";