LAMP is an acronym for an arrangement of Open-Source technologies that fit together with great synergy to provide working database driven systems and database maintaining systems. By definition, wordpress and most shopping cart packages that you can install on a web-server are a LAMP application. Because of the inclusion of Apache in the recipe, LAMP is by definition, internet or intranet related, and these applications would use a browser for GUI purposes.

Modern ERP and CRM applications, even those with heavy internal firewalling and proprietary GUI software have worked for years developing a seperation between the business logic layer and the client interface. For example, the complex liturgy of calculated taxes and deductions related to the gross and net amount of a New York paycheck are the business logic segment of an ERP or accounting program. The pretty looking check on the screen of your Quickbooks program is a graphical representation of the underlying data and calculations. Once upon a time, a programming language shouldered the burden of both tasks.

In the LAMP philosophy, the PHP layer, sometimes also called the Perl layer, can be subdivided again to achieve this result. The Smarty Template system is a convenient way to do this. In the Smarty Template framework, visual elements are written in a high level html with css using only a tag to invoke business logic elements where needed. For example, the gross calculation from payroll hours, which may be the product of regular time, overtime, holiday time, vacation pay, etc. and the series of tax deductions, retirement contrbutions and health plan participation costs may be embedded in the very display of the paycheck with a single tag that instructs a web-page, before formatting the html, to invokde the gross to net.

For Example;

<head><title>Paycheck for employee {{dv_emp_id}} – {{dv_emp_name}}</title></head>
<body>{{bl_pr_gross_to_net dv_emp_id}}

Would start creating a web page (I forget to define the source for the css) but invoke business logic from the payroll modules called gross_to_net for the employee number contained in the dynamic variable dv_emp_id before creating the body of the web browser document.