Para imprimir con php yo conozco dos posibilidades: 1º imprimir lo que se muestra en la ventana del navegador utilizando javascript. Para esto se puede utilizar el siguiente codigo:
 
function imprimir(){
	document.getElementById('btnimprimir').style.visib  ility = 'hidden'; 
	if (window.print)
	{
		window.print()
	}
	else
	{
		alert("No tiene instalado el window.print");
	}
	document.getElementById('btnimprimir').style.visib  ility = ''; 
} 
donde, obviamente, tienes que tener un boton llamado btnimprimir y sirve para windows ya que si no tiene instalado el window.print no funciona. En este caso generas la pagina utilizando php y lo imprimes con javascript. 
La 2º posibilidad que yo he utilizado es generar un archivo pdf para luego mostrarlo o guardarlo. Para ello hay que utilizar algunalibreria de funciones que permitan la generacion del pdf.  
Yo he utilizado la que se encuentra en esta direccion:  
http://www.fpdf.org/ 
es buena y relativamente sencilla de utilizar. Solo requiere un poco de practica. Y es gratis 
 
  
Tambien hay librerias para generar archivos tipo rtf (tipo word). Pero no recuerdo ninguna gratuita en este momento. Cuestion de buscar. 
Espero que esto te haya sido util