> php started its life as a template system. it has since evolved, for
> better or worse, into a programming language. a template system should
> separate presentation from business logic. php doesn't. if you use php
> as a template system there is no way to enforce this separation.
> that's where a real template system (like Smarty) comes in.

i would agree, to an extent, that php is a web template "engine" or system. it
does follow many of the characteristics of a template engine. however, it was
not designed as such. imho, it is a reflective scripting language. enforcing the
separation of presentation and business logic is not the responsibility of the
language or the template engine. it is the responsibility of the
developer/architect. meaning that a template engine's primary role is to take 2
inputs (data, model) and produce output (view). the definition of business logic
is the real kicker here. there is template logic that is also needed in a
template engine that provides some flow logic and other types of logic. however,
that is not to mistaken for business logic.

--
ray

_______________________________________________

UPHPU mailing list
[email protected]
http://uphpu.org/mailman/listinfo/uphpu
IRC: #uphpu on irc.freenode.net

Reply via email to