ThinkPHP php 框架学习笔记


Posted in PHP onOctober 30, 2009

花了两个多钟在看 ThinkPHP 框架,不想太过深入的知道它的所有高深理论。单纯想知道怎么可以用起来,可以快捷的搭建一个网站。所以是有选择的看,二个钟后还是一头雾水。于是决定改变学习策略,上官方论坛看其它高人写的民间教程,果然比官方的通俗易懂多了。http://bbs.thinkphp.cn/forumdisplay.php?fid=6 (官方论坛)

ThinkPHP 有很多函数通过参数拼凑的方式来组合SQL,如下:$list = $test->findall('',$fields,'id desc',$p->firstRow.','.$p->listRows);虽然这样的拼凑的方式简化了我们 sql 语句,但这也要求我们要记住很多函数方法,我并不想去记太多这样的东西,觉得有时还不如直接写一条完整的 sql 来得简单。不知ThinkPHP里有没有直接写 sql 后执行select 查询的函数方法? 后来得知 Model.class.php 里面有一个方法 public function query($sql) 可以达到我想要的要求!在做分页时就是用query方法跳过了使用 findall 方法实现了分页功能。

看了例子和教程都是对单表操作的,可很多情况下我们要用到多表联合操作。如多表联合查询,这个时候又应该怎样做呢?ThinkPHP 已经考虑到这个问题,已经很贴心的帮我们安排了关联查询和关联操作。这些我都嫌弃过于麻烦!其实灵活运用这个框架里面的一些基本的函数方法,就可以达到关联查询和关联操作。没必要记忆一大堆乱七八糟的东西。

数据分页是经常要用到的一项功能,TP这方面做得还算挺简单。在网上找了一个教程( http://bbs.phpchina.com/thread-52813-1-1.html ),本以为参考这个教程写出一个TP分页程序应该很简单的事。没想到还是颇费了一番周折!

 ①     一开始是遇到 Fatal error:  Class 'Think' not found in….. 的错误提示,在网上找了一通才知道是缺少了一个扩展类库。后来在官方网站下载了相应的文件。

 ②     扩展类库有了,没提示错误了,可还是不能正确显示出想要的结果!查看“页面Trace信息”,原来是SQL有问题 SELECT COUNT() AS tp_count FROM `think_demo` LIMIT 1,分析得出教程的这句$count = $test->count('','id') 代码有问题,改成 $count = $test->count('id') 终于看到上一页下一页的超链接了。尽信书不如无书!

 ③     用教程的 $list = $test->findall('',$fields,'id desc',$p->firstRow.','.$p->listRows); 这句代码我怎么也得不到想要的结果,我也不想去深入了解 findall 方法的各个参数的使用方法。于是改成 $list = $test->query("select $fields from think_demo order by id desc limit $p->firstRow,$p->listRows") 。再运行,这次终于把分页搞掂出来了!

PHP 相关文章推荐
PHPShop存在多个安全漏洞
Oct 09 PHP
PHP的explode和implode的使用说明
Jul 17 PHP
解析使用substr截取UTF-8中文字符串出现乱码的问题
Jun 20 PHP
微信扫描二维码登录网站代码示例
Dec 30 PHP
通过curl模拟post和get方式提交的表单类
Apr 23 PHP
PHP中使用curl入门教程
Jul 02 PHP
php解决和避免form表单重复提交的几种方法
Aug 31 PHP
php操纵mysqli数据库的实现方法
Sep 18 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
Jun 06 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 PHP
php pack与unpack 摸板字符字符含义
Oct 29 #PHP
php 显示指定路径下的图片
Oct 29 #PHP
dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)
Oct 29 #PHP
PHP 简单日历实现代码
Oct 28 #PHP
php 网页游戏开发入门教程一(webgame+design)
Oct 26 #PHP
php 文件上传系统手记
Oct 26 #PHP
php后台程序与Javascript的两种交互方式
Oct 25 #PHP
You might like
PHP写的简单数字验证码实例
2017/05/23 PHP
JavaScript中的其他对象
2008/01/16 Javascript
JS 页面自动加载函数(兼容多浏览器)
2009/05/18 Javascript
javascript 从if else 到 switch case 再到抽象
2010/07/17 Javascript
详解JavaScript中undefined与null的区别
2014/03/29 Javascript
js面向对象编程之如何实现方法重载
2014/07/02 Javascript
jQuery实现的在线答题功能
2015/04/12 Javascript
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
javascript动态设置样式style实例分析
2015/05/13 Javascript
js+css实现的圆角边框TAB选项卡滑动门代码分享(2款)
2015/08/26 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
javascript自执行函数
2017/02/10 Javascript
canvas实现钟表效果
2017/02/13 Javascript
详解vue 模版组件的三种用法
2017/07/21 Javascript
详解angularjs的数组传参方式的简单实现
2017/07/28 Javascript
Vue作用域插槽slot-scope实例代码
2018/09/05 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
jQuery实现高级检索功能
2019/05/28 jQuery
用Angular实现一个扫雷的游戏示例
2020/05/15 Javascript
vue props 一次传多个值实例
2020/07/22 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
简单介绍Python的轻便web框架Bottle
2015/04/08 Python
利用Pandas 创建空的DataFrame方法
2018/04/08 Python
Python redis操作实例分析【连接、管道、发布和订阅等】
2019/05/16 Python
利用python-pypcap抓取带VLAN标签的数据包方法
2019/07/23 Python
用python画一只可爱的皮卡丘实例
2019/11/21 Python
python创建文本文件的简单方法
2020/08/30 Python
Python3.9.1中使用split()的处理方法(推荐)
2021/02/07 Python
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
上班上网检讨书
2014/01/29 职场文书
十二生肖观后感
2015/06/12 职场文书
银行柜员工作心得体会
2016/01/23 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
关于Python中*args和**kwargs的深入理解
2021/08/07 Python