Home >Backend Development >PHP Tutorial >PHP的MVC实现(4)

PHP的MVC实现(4)

WBOY
WBOYOriginal
2016-06-23 14:32:091030browse

我们的index.php 文件看起来像这样:

以下是代码片段:
require_once(’lib/DataAccess.php’);  
require_once(’lib/ProductModel.php’);  
require_once(’lib/ProductView.php’);  
require_once(’lib/ProductController.php’);  
$dao=& new DataAccess (’localhost’,’user’,’pass’,’dbname’);  
$productModel=& new ProductModel($dao);  
$productController=& new ProductController($productModel,$_GET);  
echo $productController->display();  
?> 

漂亮而简单。

 

我们有一些使用控制器的技巧,在PHP中你可以这样做:

$this->{$_GET['method']}($_GET['param']);


一个建议是你最好定义程序URL的名字空间形式(namespace),那样它会比较规范比如:

以下是代码片段:

"index.php?class=ProductView&method=productItem&id=4"


通过它我们可以这样处理我们的控制器:

以下是代码片段:

$view=new $_GET[’class’];  
$view->{$_GET[’method’]($_GET[’id’]);


有时候,建立控制器是件很困难的事情,比如当你在开发速度和适应性之间权衡时。一个获得灵感的好去处是Apache group 的Java Struts,它的控制器完全是由XML文档定义的。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP IDE程序 phpeclipseNext article:Delphi for PHP 的遗憾