MVC三个字母的含义: M:Model 模型,负责数据库操作。 V:View 视图,负责调用Model调取数据,再调用模板,展示出最终效果。 C:Controller 控制器,程序的入口,决定改调用哪个View,并告诉View该做什么。 下面是一个超级简单的MVC结构实现: Controller.php include 'Model.php'; include 'View.php'; class Controller { private $model = ''; private $view = ''; public function Controller(){ $this-model = new Model(); $this-view = new View(); } public function doAction( $method = 'defaultMethod', $params = array() ){ if( empty($method) ){ $this-defaultMethod(); }else if( method_exists($this, $method) ){ call_user_func(array($this, $method), $params); }else{ $this-nonexisting_method(); } } public function link_page($name = ''){ $links = $this-model-getLinks(); $this-view-display($links); $result = $this-model-getResult($name); $this-view-display($result); } public function defaultMethod(){ $this-br(); echo "This is the default method. "; } public function nonexisting_method(){ $this-br(); echo "This is the noexisting method. "; } public function br(){ echo ""; } } $controller = new Controller(); $controller-doAction('link_page', 'b'); $controller-doAction(); Model.php class Model { private $database = array( "a" = "hello world", "b" = "ok well done", "c" = "good bye", ); //@TODO connect the database //run the query and get the result public function getResult($name){ if( empty($name) ){ return FALSE; } if( in_array($name, array_keys( $this-database ) ) ){ return $this-database[$name]; } } public function getLinks(){ $links = "Link A "; $links.= "Link B "; $links.= "Link C "; return $links; } } View.php class View { public function display($output){ // ob_start(); echo $output; }
创新互联建站是专业的始兴网站建设公司,始兴接单;提供成都网站制作、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行始兴网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
看到你前面几段写的就知道你是玩Java的。Java主要用Spring来实现主要的解耦功能。
PHP这里的框架很少,而且PHP也没有那么灵活的反射机制等吧。所以如果要用PHP来实现高内聚低耦合,有点难度,除非你自己搞框架。
我看discuz论坛都没有用那么复杂的技术,而且我个人觉得PHP用MVC来分,分个controller,实在没有必要。
如果楼主用了很复杂的业务逻辑,为何不用Java来做业务中心,PHP做前端,使用Java的WebService来暴露数据呢?
个人拙见,一起探讨。
php支持的数据库有很多噢,下面列举一下!
MySQL
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
MsSql
ms SQL是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。
Oracle
oracle是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。
Access
Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。
PostgreSQL
PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。
InterBase
InterBase是一种关系数据管理系统(Relational database management system RDBMS),它提供了在单机或多用户环境中的快速数据处理及共享的工具。InterBase的核心是提供透明的多机种支持的网络运行服务器技术。InterBase是可以在Windows 95、Windows NT、Novell NetWare及多种UNIX操作系统上运行的工具。
CUBRID
CUBRID是一个全面开源,且完全免费的关系数据库管理系统。
dBase
dBase是第一个在个人电脑上被广泛使用的单机版数据库系统。
Firebird/InterBase
Firebird特性介绍firebird是一个全功能的,强大高效的,轻量级,免维护的数据库。
IBM DB2
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统
Informix
Informix是IBM公司出品的关系数据库管理系统(RDBMS)家族。
MaxDB
MaxDB是一种企业级数据库管理系统。
MongoDB
MongoDB 是一个基于分布式文件存储的数据库。
mSQL
mSQL(mini SQL)是一个单用户数据库管理系统,个人使用免费,商业使用收费。由于它的短小精悍,使其开发的应用系统特别受到互联网用户青睐。
SQLite
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。
SQLSRV
SQL Server(SQLSRV )是由Microsoft开发和推广的关系数据库管理系统(RDBMS)。
Sybase
美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统。
tokyo_tyrant
一个可持久化数据的,好处是速度不错,而且大至兼容Memcached的文本协议,客户端可以继续使用SpyMemcached。
希望对你有帮助,谢谢采纳!
菜鸟练手的估计还可以,那种系统就一个增删改查。不能用于商业。商业用途的此类系统,用Java做的。3万起!用你的80悬赏分,你太看得起百度了…… 用PHP...
一、php配置MySQL
1、将php安装目录下的php_mysql.dll和MySQL安装目录下的libmysql.dll文件拷贝至c:/windows/system32中;
2、配置php.ini
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
把上面四个。dll的最前面的;去掉
二、php表单提交至数据库的实现过程
1、login.php页面
SPAN style="FONT-SIZE: 14px"html
FORM method=post action=add.php
Name: INPUT name=usernameBR
Email: INPUT name=emailBR
INPUT value=提交 type=submit name=submit
/FORM
/SPAN
2、add.php页面
SPAN style="FONT-SIZE: 14px"?php
include("conn.php");
?
?php
if(isset($_POST["submit"]))
{
$sql = "insert into users(username, email) values('$_POST[username]', '$_POST[email]')";
mysqli_query($conn, $sql);
echo "添加成功";
}
?/SPAN
3、conn.php页面
SPAN style="FONT-SIZE: 14px"?php
$conn = new mysqli("localhost", "root", "159357");
$conn-select_db("db_test");
//mysql_query("set name 'gb2312'");
$conn-set_charset("utf8");
?/SPAN