ThinkPHP php 框架学习笔记
作者:bea
花了两个多钟在看 ThinkPHP 框架,不想太过深入的知道它的所有高深理论。单纯想知道怎么可以用起来,可以快捷的搭建一个网站。所以是有选择的看,二个钟后还是一头雾水。于是决定改变学习策略,上官方论坛看其它高人写的民间教程,果然比官方的通俗易懂多了。http://bbs.thinkphp.cn/forumdisplay.php?fid=6 (官方论坛) ThinkPHP 有很多函数通过参数拼凑的方式来组合SQL,如下:$list = $test->findall(''
花了两个多钟在看
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") 。再运行,这次终于把分页搞掂出来了!
有用 | 无用
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 向右侧拉菜单实现代码,测试使用中
- 网页游戏开发入门教程三(简单程序应用)
- 网页游戏开发入门教程二(游戏模式+系统)
- 初学CAKEPHP 基础教程
- PHP+MySQL 制作简单的留言本
- PHP+XML 制作简单的留言本 图文教程
- php 调用远程url的六种方法小结
- phpmailer 中文使用说明(简易版)
- PHP 程序员应该使用的10个组件
- 基于HTTP长连接的"服务器推"技术的php 简易聊天室
- php 远程包含文件漏洞分析
- php UTF8 文件的签名问题
- PHP+MySQL 手工注入语句大全 推荐
- php 攻击方法之谈php+mysql注射语句构造
- PHP 文件上传源码分析(RFC1867)
- 浅谈PHP 闭包特性在实际应用中的问题
- php实现jQuery扩展函数
- PHP 读取和修改大文件的某行内容的代码
- PHP 批量删除数据的方法分析