smarty+adodb+部分自定义类的php开发模式


Posted in PHP onDecember 31, 2006

前几天把热网的后台基本弄好,腾出时间对工作总结了一下。
  在设计模式上,我尝试着使用mvc模式的开发。用smarty控制显示,用case语句控制各种action,然后写好各种模块的class给action调用。这样做的确对代码的控制强了一点,比如在class.message.php中写上getAllMsg()函数,那么这个函数就可以被许多action调用。再配上分页类。在对数据的处理上还算灵活。 
 

$db=new Db;  
 $sql="select * from com_info,hr_info where hr_info.ci_id=com_info.id and {$cate} like '%{$content}%'";  
 $totalArr=$db->execute($sql);  
 $url="hr.php?op=searchHrInfoAction&cate={$cate}&content=".urlencode($content);  
 $totalItems=count($totalArr);  
 $currentPageNumber=(isset($_GET['page']))?$_GET['page']:1;  
 $pageNav=new PageNumber($currentPageNumber,$totalItems,3,3,$url);  
 $currentPageRs=$pageNav->getRsPerPage(&$totalArr);  
 $pageNavigation=$pageNav->getPageNumber();  
 $smarty->assign("pageNavigation",$pageNavigation);  
 $smarty->assign("hr",$currentPageRs);  
 $smarty->display("hr_get.htm");  
而且这种方式对协同开发很有帮助,代码重复率也不是很高。
但是如上代码所示,在构造各种模块的class之外,因为各种个性化查询的存在,不可避免会在control中直接使用db类(当然,这些处理也可以放在写成类放在class中,但有点显得 臃肿和做作)。
    但是光就方便而言,如果一段代码或者一个功能不被其他地方调用,完全可以把mc放在一起,保v单独就可以了,这需要对软件认真分析。下班了,回家楼。
PHP 相关文章推荐
提升PHP执行速度全攻略(上)
Oct 09 PHP
php miniBB中文乱码问题解决方法
Nov 25 PHP
php获取操作系统语言代码
Nov 04 PHP
删除html标签得到纯文本可处理嵌套的标签
Apr 28 PHP
PHP实现根据设备类型自动跳转相应页面的方法
Jul 24 PHP
php简单socket服务器客户端代码实例
May 18 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
Jan 11 PHP
PHP  实现等比压缩图片尺寸和大小实例代码
Oct 08 PHP
PHP的Trait机制原理与用法分析
Oct 18 PHP
PHP使用递归按层级查找数据的方法
Nov 10 PHP
宝塔面板在NGINX环境中TP5.1如何运行?
Mar 09 PHP
adodb与adodb_lite之比较
Dec 31 #PHP
PHP获得用户使用的代理服务器ip即真实ip
Dec 31 #PHP
使用adodb lite解决问题
Dec 31 #PHP
PHP通过COM使用ADODB的简单例子
Dec 31 #PHP
Adodb的十个实例(清晰版)
Dec 31 #PHP
ADODB的数据库封包程序库
Dec 31 #PHP
用ADODB来让PHP操作ACCESS数据库的方法
Dec 31 #PHP
You might like
《星际争霸重制版》兵种对比图鉴
2020/03/02 星际争霸
php中的strpos使用示例
2014/02/27 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
2016/04/02 PHP
探究Laravel使用env函数读取环境变量为null的问题
2016/12/06 PHP
PHP实现的统计数据功能详解
2016/12/06 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
在Z-Blog中运行代码[html][/html](纯JS版)
2007/03/25 Javascript
js 加载并解析XML字符串的代码
2009/12/13 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
js中利用cookie实现记住密码功能
2020/08/20 Javascript
JS计算距当前时间的时间差实例
2017/12/29 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
ES6基础之 Promise 对象用法实例详解
2019/08/22 Javascript
Vue.js中使用Vuex实现组件数据共享案例
2020/07/31 Javascript
详解ES6 中的Object.assign()的用法实例代码
2021/01/11 Javascript
详解vite2.0配置学习(typescript版本)
2021/02/25 Javascript
微信小程序input抖动问题的修复方法
2021/03/03 Javascript
[01:16]2014DOTA2 TI专访C9战队EE:中国五强中会占三席
2014/07/10 DOTA
[54:15]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第二场2月1日
2021/03/11 DOTA
python中as用法实例分析
2015/04/30 Python
Python中常见的数据类型小结
2015/08/29 Python
创建pycharm的自定义python模板方法
2018/05/23 Python
Python RabbitMQ消息队列实现rpc
2018/05/30 Python
Python实现的调用C语言函数功能简单实例
2019/03/13 Python
巴西儿童时尚购物网站:Dinda
2019/08/14 全球购物
请解释virtual关键字的含义
2015/06/17 面试题
经典优秀个人求职信分享
2013/12/12 职场文书
求职信需要的五点内容
2014/02/01 职场文书
市场营销策划方案
2014/06/11 职场文书
2015小学教师年度考核工作总结
2015/05/12 职场文书
父母教会我观后感
2015/06/17 职场文书
导游词之杭州西湖
2019/09/19 职场文书
前端实现滑动按钮AJAX与后端交互的示例代码
2022/02/24 Javascript