Interesting...
Never heard of teng until now...
Obviously there are huge differences in Smarty and Teng...so I am not sure how/why you ruled them out...
Smarty is pure PHP and Teng is a C++ API with PHP extensions to allow it's use in PHP
For that reason...Teng is likely a helluva lot faster but Smarty has the advantage of being done in PHP so it'll be most compatible with hosting companies...
Smarty is also the king of template engines in PHP...no other template IMHO holds a candle...not to say it's best it just most popular...therefore:
1) Tons of support
2) Tons of jobs
3) Tons of tutorials
4) Well tested and peer reviewed
Smarty is a good choice if you plan on developing commercial software as you won't limit your consumer base to those who can install PHP extensions...
Teng might be a better choice if yoy are on a dedicated host and need pure speed because you are designing a inhouse application - so you don't need Smarty portability...
In saying that...you likley want to stick with somehting native in PHP, like Smarty...
Here is an article which advocates my own feelings on the use of Smatry:
http://www.massassi.com/php/articles/template_engines/
I've used the PHP bTemplate appraoch ever since...
It's pure PHP so it's faster than Smarty and likewise more powerful, but much easier to follow bad practice, such as calling SQL funcitons inside your template...which defeats the purpose...but I consider myself a disciplined programmer so I make the choice to use bTemplate approach...
bTemplate (at least the code I use) doesn't support Caching, etc...but it could be easily added...
Here is a list of existing template engines:
http://www.sitepoint.com/forums/showthr ... did=123769
Honestly...they all pretty much do the same thing...and really your choice will likely come down to which syntax you use...
Personally I like Yapter:
http://yapter.sourceforge.net/?action=syntax
I just find it's syntax cleaner I guess...
The questions you need to ask should sounds something like this:
1) Do I need break neck speed? Teng
2) Do I need portability? Native PHP engines
3) How much control (logic) do I need in my templates? bTemplate vs Smarty
4) Do I need code candy, such as extensions like Smarty supports.
5) Do you need a template engine which builds it's output using a DOM or simple variable interpolation?
There are tons of options...I've used many...but your question is to vague...it almost warrants an article not a thread response...
Cheers
