que cosa no te funcionda del codigo, asumo que es la resta de los dos dias, pero deberias poner el error que te devuelve php.
para lo de la resta esto te diria.
no se en que formato quieres obtener la fecha pero veo que estas haciendo algo por el lado dificil
Código PHP:
<?php
$fech_act=(date ("d/m/Y"));//
$f_ni_aa = substr($fech_act,6,4);
$f_ni_mm = substr($fech_act,3,2);
$f_ni_dd = substr($fech_act,0,2);
$f_ni_dd= $f_ni_dd - 2; //Resto los 2 Dias
$hoy=$f_ni_aa.$f_ni_mm.$f_ni_dd;
ese formato de fecha no lo ocupo si es mysql la BD por ejemplo y el campo es date
no deberia ser 2007-11-07
bueno con ese formato y restando los dias de manera de obtener una fecha valida ya que de la forma que lo haces se producirian errores si le restas 2 al dia 1 del mes (no se que dia es -1 de noviembre). el codigo deberia ser mas parecido a esto
Código PHP:
<?php
$fech_act = date("d-m-Y"); // fecha actual
$f_ni_aa = date("Y"); // Año actual
$f_ni_mm = date("m"); // Mes actual
$f_ni_dd = date("d"); // Dia actual
$time = time(); // Timestamp Actual
$restar = (24*60*60)*2; // (horas*minutos*segundos)*2 -> numero de segundos en dos dias
$time_ant = $time-$restar;
$fech_ant = date("d-m-Y",$time_ant); // fecha con dos dias menos
$f_ni_aa_ant = date("Y",$time_ant); // Año con dos dias menos
$f_ni_mm_ant = date("m",$time_ant); // Mes con dos dias menos
$f_ni_dd_ant = date("d",$time_ant); // 2 dias antes de hoy
echo $fech_ant;
?>
eso es, si entendi mal me avisas.
salu2