Tengo fechas en el siguiente formato: AAAASSD
donde:
AAAA = año 2003
SS = semana 04
D = dia de la semana 3 (miercoles)
Necesito convertirlas a formato común:
2003043 --> 22/01/2003
El año pasado me basé en unas funciones que encontre en los comentarios del manual oficial de php y esto me funcionó:
Código PHP:
<?
/* recibe parametros semana y dia (1=lunes, 7=domingo)
* obtiene un timestamp a partir de ello.
*/
function wday($wkno,$xday) {
define ("DAY", "86400"); // segundos en 1 dia
define ("WEEK", "604800"); // segundos en 1 semana
define ("SO_DAY", $xday); //ejm: 6 es sabado
$t = time(); //timestamp actual
$dx = date("w"); //dia de la semana actual
$woy = exec('date +%U'); // obtiene semana actual.
// sé que puedo reemplazarlo
// por date("W") ;)
$woy+=1;
$t += (((SO_DAY - $dx) * DAY) + (($wkno - $woy) * WEEK));
return $t;
}
// asi uso la funcion...
$fecha= date('d/m/Y',wday(4,3));
echo $fecha;
?>