usa $html =
ob_get_contents(); y tendrás todo el buffer de salida del archivo
hasta ese punto pero del mismo script, si lo colocas al final, tendrás TODO lo generado por el script

.
me imagino que lo necesitas desde otro script, pero puedes resolverlo aplicando el método de buferes:
archivo1.php:
Código PHP:
ob_start();
$id_byinclude=3;//para indicar lo que le pasarias por get si no lo tuvieses
include("archivo2.php");
$html =ob_get_contents();
ob_end_clean();
archivo2.php:
Código PHP:
$id=$_GET['id'];
if(isset($id_byinclude)){
$id=$id_byinclude;
}
...
así $html contendrá todo el contenido dinámico de archivo2.php sin afectar el buffer del archivo que lo incluye