ThinkPHP php 框架學(xué)習(xí)筆記
ThinkPHP 有很多函數(shù)通過(guò)參數(shù)拼湊的方式來(lái)組合SQL,如下:$list = $test->findall('',$fields,'id desc',$p->firstRow.','.$p->listRows);雖然這樣的拼湊的方式簡(jiǎn)化了我們 sql 語(yǔ)句,但這也要求我們要記住很多函數(shù)方法,我并不想去記太多這樣的東西,覺(jué)得有時(shí)還不如直接寫(xiě)一條完整的 sql 來(lái)得簡(jiǎn)單。不知ThinkPHP里有沒(méi)有直接寫(xiě) sql 后執(zhí)行select 查詢的函數(shù)方法? 后來(lái)得知 Model.class.php 里面有一個(gè)方法 public function query($sql) 可以達(dá)到我想要的要求!在做分頁(yè)時(shí)就是用query方法跳過(guò)了使用 findall 方法實(shí)現(xiàn)了分頁(yè)功能。
看了例子和教程都是對(duì)單表操作的,可很多情況下我們要用到多表聯(lián)合操作。如多表聯(lián)合查詢,這個(gè)時(shí)候又應(yīng)該怎樣做呢?ThinkPHP 已經(jīng)考慮到這個(gè)問(wèn)題,已經(jīng)很貼心的幫我們安排了關(guān)聯(lián)查詢和關(guān)聯(lián)操作。這些我都嫌棄過(guò)于麻煩!其實(shí)靈活運(yùn)用這個(gè)框架里面的一些基本的函數(shù)方法,就可以達(dá)到關(guān)聯(lián)查詢和關(guān)聯(lián)操作。沒(méi)必要記憶一大堆亂七八糟的東西。
數(shù)據(jù)分頁(yè)是經(jīng)常要用到的一項(xiàng)功能,TP這方面做得還算挺簡(jiǎn)單。在網(wǎng)上找了一個(gè)教程( http://bbs.phpchina.com/thread-52813-1-1.html ),本以為參考這個(gè)教程寫(xiě)出一個(gè)TP分頁(yè)程序應(yīng)該很簡(jiǎn)單的事。沒(méi)想到還是頗費(fèi)了一番周折!
?、?SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> 一開(kāi)始是遇到 Fatal error: Class 'Think' not found in….. 的錯(cuò)誤提示,在網(wǎng)上找了一通才知道是缺少了一個(gè)擴(kuò)展類庫(kù)。后來(lái)在官方網(wǎng)站下載了相應(yīng)的文件。
?、?SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> 擴(kuò)展類庫(kù)有了,沒(méi)提示錯(cuò)誤了,可還是不能正確顯示出想要的結(jié)果!查看“頁(yè)面Trace信息”,原來(lái)是SQL有問(wèn)題 SELECT COUNT() AS tp_count FROM `think_demo` LIMIT 1,分析得出教程的這句$count = $test->count('','id') 代碼有問(wèn)題,改成 $count = $test->count('id') 終于看到上一頁(yè)下一頁(yè)的超鏈接了。盡信書(shū)不如無(wú)書(shū)!
?、?SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> 用教程的 $list = $test->findall('',$fields,'id desc',$p->firstRow.','.$p->listRows); 這句代碼我怎么也得不到想要的結(jié)果,我也不想去深入了解 findall 方法的各個(gè)參數(shù)的使用方法。于是改成 $list = $test->query("select $fields from think_demo order by id desc limit $p->firstRow,$p->listRows") 。再運(yùn)行,這次終于把分頁(yè)搞掂出來(lái)了!
- thinkphp學(xué)習(xí)筆記之多表查詢
- ThinkPHP學(xué)習(xí)筆記(一)ThinkPHP部署
- thinkPHP學(xué)習(xí)筆記之安裝配置篇
- 淺談ThinkPHP5.0版本和ThinkPHP3.2版本的區(qū)別
- thinkphp3.2.3版本的數(shù)據(jù)庫(kù)增刪改查實(shí)現(xiàn)代碼
- ThinkPHP 3.2 版本升級(jí)了哪些內(nèi)容
- ThinkPHP3.1.3版本新特性概述
- 解密ThinkPHP3.1.2版本之模板繼承
- 解密ThinkPHP3.1.2版本之獨(dú)立分組功能應(yīng)用
- 從ThinkPHP3.2.3過(guò)渡到ThinkPHP5.0學(xué)習(xí)筆記圖文詳解
相關(guān)文章
PHP setcookie設(shè)置Cookie用法(及設(shè)置無(wú)效的問(wèn)題)
平時(shí)用Session比較多,很少用到Cookie,這次是為了解決Discuz!自動(dòng)同步登陸不得不用Cookie。2011-07-07
thinkphp 一個(gè)頁(yè)面使用2次分頁(yè)的實(shí)現(xiàn)方法
thinkphp內(nèi)置ORG.Util.Page方法分頁(yè),使分頁(yè)變得非常簡(jiǎn)單快捷。 但是如果一個(gè)頁(yè)面里需要使用2次分頁(yè),就會(huì)產(chǎn)生沖突,這里先記錄下百度來(lái)的解決辦法。需要的朋友可以參考下2013-07-07
國(guó)外比較好的幾個(gè)的Php開(kāi)源建站平臺(tái)小結(jié)
大量的PHP開(kāi)源(開(kāi)放源代碼/Open Source)應(yīng)用改變了這個(gè)世界,改變了互聯(lián)網(wǎng),以下我們總結(jié)從數(shù)據(jù)庫(kù)到購(gòu)物、博客等眾多類型的開(kāi)源PHP軟件,供網(wǎng)站開(kāi)發(fā)者們參考。2010-04-04

