ThinkPHP中数据操作案例分析


Posted in PHP onSeptember 27, 2015

本文实例分析了ThinkPHP中数据操作方法。分享给大家供大家参考。具体如下:

模板中使用函数,相信大部分的TPer都知道也用过吧。

案例:

获取用户名的方法

function get_username($uid){
  $row = M('User')->getbyUid($uid);
  return $row['username'];
}

在模板中通过uid显示用户名

<volist name="rows" id="row">
<tr>
  <td>{$row.uid}</td>
  <td>{$row.uid|get_username}</td>
</tr>
</volist>

这种方法相信大伙应该很常用吧?这种用法有两个不好的地方:

1、过多数据库操作;
2、数据操作的位置不合理,数据库连接过长。

优化方案:

1、尽可能把能合并的数据库操作;
2、数据操作应该保留在数据层,尽可能避免在视图里操作数据库,建议在视图开始前执行mysql_close(),断开数据库连接。

希望本文所述对大家基于ThinkPHP的php程序设计有所帮助。

PHP 相关文章推荐
让PHP开发者事半功倍的十大技巧小结
Apr 20 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
php二维数组转成字符串示例
Feb 17 PHP
CI框架中cookie的操作方法分析
Dec 12 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
PHP常用的三种设计模式
Feb 17 PHP
PHP排序算法之冒泡排序(Bubble Sort)实现方法详解
Apr 20 PHP
PHP实现的数据对象映射模式详解
Mar 20 PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
Jul 03 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
Oct 11 PHP
Laravel监听数据库访问,打印SQL的例子
Oct 24 PHP
yii2.0框架场景的简单使用示例
Jan 25 PHP
PHP中两个float(浮点数)比较实例分析
Sep 27 #PHP
用php代码限制国内IP访问我们网站
Sep 26 #PHP
十大使用PHP框架的理由
Sep 26 #PHP
PHP弹出对话框技巧详细解读
Sep 26 #PHP
ThinkPHP2.x防范XSS跨站攻击的方法
Sep 25 #PHP
ThinkPHP在Cli模式下使用模板引擎的方法
Sep 25 #PHP
腾讯CMEM的PHP扩展编译安装方法
Sep 25 #PHP
You might like
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
2016/07/09 PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
2017/02/15 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
2019/05/13 PHP
juqery 学习之三 选择器 可见性 元素属性
2010/11/25 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
NodeJS Express框架中处理404页面一个方式
2014/05/28 NodeJs
jquery制作多功能轮播图插件
2015/04/02 Javascript
jQuery的Ajax用户认证和注册技术实例教程(附demo源码)
2015/12/08 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换
2016/11/25 Javascript
js遍历json的key和value的实例
2017/01/22 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
Angular directive递归实现目录树结构代码实例
2017/05/05 Javascript
详解webpack+express多页站点开发
2017/12/22 Javascript
webpack-url-loader 解决项目中图片打包路径问题
2019/02/15 Javascript
vue项目打包上传github并制作预览链接(pages)
2019/04/19 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
vue 对axios get pust put delete封装的实例代码
2020/01/05 Javascript
js HTML DOM EventListener功能与用法实例分析
2020/04/27 Javascript
[01:29]Ti4循环赛第三日精彩回顾
2014/07/13 DOTA
python实现linux下使用xcopy的方法
2015/06/28 Python
numpy实现合并多维矩阵、list的扩展方法
2018/05/08 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
2018/06/04 Python
pytorch 输出中间层特征的实例
2019/08/17 Python
python 利用matplotlib在3D空间中绘制平面的案例
2021/02/06 Python
分公司经理岗位职责
2013/11/11 职场文书
常务副总经理任命书
2014/06/05 职场文书
国庆宣传标语
2014/06/30 职场文书
2014年小学工作总结
2014/11/26 职场文书
2014年绩效考核工作总结
2014/12/11 职场文书
高中生物教学反思
2016/02/20 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
浅谈Python响应式类库RxPy
2021/06/14 Python
阿里云服务器部署mongodb的详细过程
2021/09/04 MongoDB
vue3获取当前路由地址
2022/02/18 Vue.js
Android超详细讲解组件ScrollView的使用
2022/03/31 Java/Android