ok funziona... solo che quando voglio calcolare l'ultima domenica ad esempio, me la calcola del mese precedente.
il codice è
$start = date('Y-m-d',strtotime(''.$primo.' '.$giorno.' '.$anno.'-'.$mese) );
dove $primo è la variabile che gli passo contenente in questo caso il valore last. se il valore fosse first, third... funziona.