Hi there.
Template are a way to take apart php code and html code.
One some file you put the html squeleton of your site. Those files contains variable that will be dynamically changed by your php code.
On you php code you tll wich template file to use and wich variable to change by wich values.
This let you have a complex site that will be easyly customizable by someone who doesnt know php but only html.
have a look on this site on the article part, and search for templates.
I know of 2 way to handle templates: fast templates and phplib templates. Phplib looks fine to me:
http://www.phpbuilder.com/columns/david20000512.php3