w3c valida html, pero el navegador "trensforma" php en html, ya que si tu miras el código fuente de un archivo .php (en el navegador (por ejemplo, mira el código de
http://www.forosdelweb.com/index.php)) todo es html. Pues con w3c pasa lo mismo, si tu copias el código del ejemplo (
http://www.forosdelweb.com/index.php), el que has visto des del navegador, lo dará por bueno, pero si pones el php que realmente hay, pues lo dará por "malo".