on SourceForge Logo

Introduction

php.MVC is an open source framework for PHP Web applications.

php.MVC implements the Model-View-Controller (MVC) design pattern, and encourages application design based on the Model 2 paradigm. This design model allows the Web page or other contents (View) to be mostly separated from the internal application code (Controller/Model), making it easier for designers and programmers to focus on their respective areas of expertise.

The framework provides a single entry point Controller. The Controller is responsible for allocating HTTP requests to the appropriate Action handler (Model) based on configuration mappings.

The Model contains the business logic for the application. The Controller then forwards the request to the appropriate View component, which is usually implemented using a combination of HTML with PHP tags in the form of templates. The resulting contents are returned to the client browser, or via another protocol such as SMTP.

php.MVC is a PHP port of Jakarta Struts. It currently supports many features of Struts, including declarative application configuration via the XML digester. For example, mappings from the various Action business logic components to appropriate results pages can be specified declaratively in the XML configuration file.

Contact

  Email: jwilde AT users.sourceforge.net

Support Forums

Forums on SourceForge
   php.MVC (Support for the php.MVC framework)
   Digester (Support for XML Configuration digester module fo php.MVC)
   General (Other Topics)

Web Sites and Online Demo

php.MVC Home Page
php.MVC Online Demo
php.MVC SourceForge Project Page
php.MVC SourceForge Home Page

Download php.MVC

php.MVC SourceForge Project Page

Quick Start Guide

[Quick Start Guide and Graphics - Soon]. Please start at the Main.php files. These are the main application entry points.

Requirements

 o PHP enabled Web server
 o PHP v. 4.1.0 or greater
 o XML parser (James Clark's expat is usually included with most PHP versions)

Implementation Details

Environment : Web
Audience : Web developers
License : GNU General Public License
OS : OS independent
Language : PHP
Architectural model : Jakarta Struts (Model-View-Controller pattern)

Resources

Please note: As php.MVC is closely modeled on the Struts framework, much of the Struts documentation and papers will be very helpful in understanding and using the php.MVC framework.

Apache Jakarta Struts
Struts FAQ Home Page
Struts mailing List
Struts Java Docs
Introduction to Jakarta Struts Framework Part 1
Introduction to Jakarta Struts Framework Part 2
Introduction to Jakarta Struts Framework Part 3
Learning the New Jakarta Struts 1.1, Sue Spielman 11/06/2002. Part 1
Create Better Web Apps with Struts
Jakarta Struts: Seven Lessons from the Trenches, Chuck Cavaness
Learning and Using Jakarta Digester, Philipp K. Janert, Ph.D. 10/23/2002
MVC and Struts, Steven Sweeting. 2002
Struts Tutorial, Stephan Wiesner. Version: 1.03 Published: 14. 04. 2002.
The Struts Framework's Action Mappings Configuration File, Wellington L.S. da Silva. 26 Oct 2001
Using Struts, Larry Maturo (Athens Group). 2002 (pdf file)
Some Struts1.1 UML Class diagrams

Credits

php.MVC is closely modeled on the Apache Jakarta Struts MVC framework. It also uses other third party libraries such as phpLIB and phpUnit. Without the free sharing of design and source code, this work would not be possible. Thank you.

PHP Web scripting language
Apache Struts:Craig R. McClanahan et al.
phpLIB: PHP base library
phpUnit: Fred Yankowski - OntoSys, Inc.
Chuck Cavaness, author of Programming Jakarta Struts
Opps, almost forgot PHP XML Classes, hidden deep in the Digester ...
PHP XML Classes: Luis Argerich, A collection of classes and resources to process XML using PHP