Im ersten Schritt (Ohne php) wird zb <? echo "ich idiot" ?> auch als <? echo "ich idiot" ?> zurück gegeben. also beachtet der server dieses nicht und der client kann jeden php code lesen.
dann läuft also deine datei nicht durch den php-interpreter
nachdem du die datei .xhtml genannt hast, kann das durchaus der fall sein - nachdem dateiendungen im http-kontext sowieso schall und rauch sind, benennen die datei einfach in .php - das ändert nichts daran dass es xml oder xhtml ist, sofern du den entesprechenden mime-type mitschickst, klappts dann auch mit dem interpretieren