Is there any way to achieve the master page concept of ASP.NET in PHP?
You could use a template engine like Smarty:
Although Smarty is known as a
"Template Engine", it would be more
accurately described as a
"Template/Presentation Framework."
That is, it provides the programmer
and template designer with a wealth of
tools to automate tasks commonly dealt
with at the presentation layer of an
application.
Of course it's possible. Have a look here. It shows a basic way of doing it, which of course, you can extend. Good luck!
I made a simple proof-of-concept for a asp-like master pages in PHP. You can get it here:
http://code.google.com/p/phpmasterpages/
As other said, the way to go is to use a template engine. My preference goes to the Zend Framework, which is a bit more than just templates ;), but has a nice implementation of a layout with Zend_Layout that is very close to Master Pages in ASP.Net.
Check the quickstart guide to have an idea of how this works, and have a look at the full doc to see the possibilities offered by the framework. Plus, using the framework gives you a nice MVC architecture and SEO-friends rewritten URLs...
Maybe just use include() since the variables in both file are in the same scope. Also ob_start() can record the output to the buffer so that the html codes can output later.
The best and easy way to do is using include as other said. Create a header.php and footer.php and include them in every page you want to use. The approach is bit different compare to asp.net master pages but is as powerful as master pages
来源:https://stackoverflow.com/questions/1933168/php-equivalent-of-master-page-in-asp-net