A ver ...
Tus "7" serán DIAS (podría ser 7 horas, 7 meses, 7años .. 7 segundo, 7 minutos .. ) ..pero como hablas de "lunes a lunes" se supone que són dias!. MKTIME() forma la fecha (según calendario) a partir de un dia, mes y año que le indiques .. para luego formaterlo con date() para ver su fecha.
Si tenemos ya desglosada tu fecha en $mes, $dia, $year (año):
Código PHP:
$dia="11";
$mes="1"; // Enero
$año="2004"; // cuatro cifras ..
$fecha_nueva=mktime(0,0,0,$mes,$dia+7,$year);
echo date ("d-m-Y",$fecha_nueva);
SI te das cuenta .. estoy sumando 7 DIAS al dia que has obtenido en tu fecha. Mktime() ya se encarga de calcular la fecha según calendario.
Pero .. si dices que esa fecha la obtienes de una Base de datos (tal vez Myslq?) .. Esos cálculos de fechas NO se deberían hacer desde PHP .. sino desde SQL que para eso cada motor de Base de datos te pone a tu disposición funciones para realizar cálculos de fechas.
Por ejemplo . .en Mysql sería:
SELECT DATE_ADD(campo_fecha, INTERVAL 7 DAY) as nueva_fecha FROM tabla
(en 'nueva_fecha' obtendrás la fecha de ese campo+ tus 7 DIAS!) ... así de simple y MUCHO más optimo que hacerlo desde PHP con todo el "list() .. el explode .. el mktime() .. el date() y todo lo demás .. por médio).
Màs info sobre funciones de fechas para Msyql:
http://www.mysql.com/doc/en/Date_and...functions.html
Un saludo,