It does make sense (I think).
The issue is that a webserver with PHP installed has to run the PHP in the page to generate the HTML for you to use (and mail). If you mail an un-executed PHP script to someone, they'll never see the HTML output at all.
So.. the .php has to be executed by a PHP interpreter. You can do that on your own system by installing something like XAMPP (Apache/PHP/mySQL server-in-a-box), then use the command line PHP command to execute the PHP script, and pipe the output to a file with type .html, then mail that file.
Hope this helped more than confused
Best regards,
Ken
BTW, YMMV if I didn't understand the question in the first place.