> 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
