thinkphp筆記二-創(chuàng)新互聯(lián)

1.控制器創(chuàng)建原則:

超過10年行業(yè)經(jīng)驗(yàn),技術(shù)領(lǐng)先,服務(wù)至上的經(jīng)營(yíng)模式,全靠網(wǎng)絡(luò)和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務(wù)范圍包括了:成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè),成都網(wǎng)站推廣,成都網(wǎng)站優(yōu)化,整體網(wǎng)絡(luò)托管,小程序制作,微信開發(fā),成都app軟件開發(fā),同時(shí)也可以讓客戶的網(wǎng)站和網(wǎng)絡(luò)營(yíng)銷和我們一樣獲得訂單和生意!

基本原則:根據(jù)功能,原則上一個(gè)功能項(xiàng)對(duì)應(yīng)控制器中的一個(gè)動(dòng)作

可能多個(gè)功能共享一個(gè)動(dòng)作添加和修改比較接近,根據(jù)條件來選擇添加還是修改

可能需要輔助方法完成一個(gè)動(dòng)作

基本原則:根據(jù)功能,按照數(shù)據(jù)表結(jié)構(gòu)進(jìn)行劃分控制器類

基本原則,項(xiàng)目包含多個(gè)不同用戶角色的功能,如果不區(qū)分模塊,可能會(huì)導(dǎo)致控制器重名,影響代碼閱讀,按照不同角色功能劃分不同模塊

是否有必要?jiǎng)?chuàng)建模塊

控制器文件如何分類

控制器動(dòng)作如何制定

2.視圖文件的架設(shè)

      靜態(tài)資源文件

             組成:圖片 css JavaScript

             文件目錄:public/子目錄

      布局文件

             組成:頁(yè)面頭部,尾部,面包屑,正文

             目錄:模塊目錄/view/

      視圖文件

             一般原則:控制器中的一個(gè)方法對(duì)應(yīng)一個(gè)視圖文件

3.數(shù)據(jù)庫(kù)模型基本使用

      連接數(shù)據(jù)庫(kù)

             使用配置文件

             傳入?yún)?shù)形式

      實(shí)例化數(shù)據(jù)庫(kù)操作對(duì)象

             使用new Model()創(chuàng)建

             使用M()函數(shù)創(chuàng)建

      執(zhí)行SQL原生查詢

             Query()方法

             Dump()函數(shù)測(cè)試結(jié)果

4.數(shù)據(jù)庫(kù)基本操作

    字符串查詢

      $table = M('tableName');

        $results = $table -> where('id > 3')->select();

    關(guān)聯(lián)數(shù)組查詢

        $condition['id'] = array('neq','3');

        $condition['uid'] = array('neq','1');

        $results = $table -> where($conditon) -> select();

    魔術(shù)方法查詢

        $results = $table -> getById('1');//只能獲取指定條件的第一條記錄

    統(tǒng)計(jì)數(shù)據(jù)

        $count = $table -> count();//統(tǒng)計(jì)表中數(shù)據(jù)

        $count = $table ->max('id');

    limit

        $limit = $table -> limit(3) -> select();//前三條記錄

        $limit = $table -> limit(2,2) -> select();//第三條記錄開始查詢兩個(gè)

    order排序

        $order = $table -> order('id desc') ->select();//id降序排列

      創(chuàng)建和插入數(shù)據(jù)

             Create():在內(nèi)存中創(chuàng)建數(shù)據(jù),不寫入數(shù)據(jù)庫(kù),過濾掉無效字段(表中沒有的字段)

工作流程:1.獲取數(shù)據(jù)(POST參數(shù)或者用戶傳入的數(shù)據(jù))2.進(jìn)行數(shù)據(jù)校驗(yàn)3.把傳入的數(shù)據(jù)放到當(dāng)前對(duì)象的data屬性中

參數(shù):1.若沒有參數(shù),表示插入$_POST[]數(shù)據(jù)2.可以傳入關(guān)聯(lián)數(shù)組數(shù)據(jù)3.可以傳入標(biāo)準(zhǔn)對(duì)象數(shù)據(jù)

     Model::MODEL_INSERT    Model::MODELUPDATE

返回值:創(chuàng)建好的數(shù)據(jù)對(duì)象組

可以直接為Model對(duì)象添加屬性或修改屬性,以實(shí)現(xiàn)添加內(nèi)存數(shù)據(jù)的目的

             Data():基本同create(),不進(jìn)行數(shù)據(jù)校驗(yàn)

             Add():把內(nèi)存中的數(shù)據(jù)插入到表中

1沒有參數(shù),直接使用MODEL對(duì)象的data屬性(create()和data()方法返回)

2附加條件

3是否覆蓋標(biāo)識(shí)(是否覆蓋已經(jīng)存在的主鍵數(shù)據(jù))

4可以直接過濾掉數(shù)據(jù)表中不存在的字段

5直接使用add(),不會(huì)進(jìn)行數(shù)據(jù)校驗(yàn)

//寫入數(shù)據(jù)前進(jìn)行校驗(yàn)

                if($this -> create($data))

{

return $this-> add();

}

      讀取數(shù)據(jù)

             Select():1不傳參查詢表中所有記錄2.傳一個(gè)參數(shù)select(1)主鍵為1的記錄3.select(1,3,5)返回主鍵為135的記錄4傳入false返回當(dāng)前查詢的語(yǔ)句

             Find():查詢一條記錄,不傳入?yún)?shù)獲取第一條記錄,find(1)返回主鍵為1的記錄

             getField():只傳入一個(gè)參數(shù),獲取第一條記錄的值

             where條件:1傳入字符串 2傳入數(shù)組或者對(duì)象,可以過濾掉非法字符。

             limit():limit(1)1.獲取指定條件的1條記錄 limit(2,2)獲取從第一個(gè)參數(shù)開始的2條記錄

             order():按照指定字段對(duì)記錄進(jìn)行排序,單字段排序和多字段排序

      刪除數(shù)據(jù):刪除成功返回刪除的個(gè)數(shù),失敗返回false

             $db = M(‘msgs’);

             $results = $db –> where(‘id = 1’)-> delete();//刪除id為1的記錄

              $results = $db –> where(‘1’)-> delete();//刪除所有記錄

             $results = $db -> delete();//不傳參數(shù)返回false

             $results = $db -> delete('1,3,5')//刪除主鍵為135的記錄

      修改數(shù)據(jù):更新指定條件的數(shù)據(jù)

      $data['name'] = "張三";

    $results = $db -> where('id = 1') -> save($data)

             若傳參,表示更新后要滿足的效果

             若不傳參,表示使用當(dāng)前數(shù)據(jù)表操作對(duì)象data屬性中的記錄

更新條件,可以使用where顯示指明更新條件,若無更新條件,save()參數(shù)中的記錄包含主鍵,更新主鍵對(duì)應(yīng)的記錄,否則不更新。更新成功返回更新的記錄數(shù),更新失敗,返回false

setField:更新個(gè)別字段的值

setInc加 setDec減

5.模型操作類

      作用:MVC分離相對(duì)徹底,邏輯清晰,適合分工合作,方便實(shí)現(xiàn)一些特性的效果(過濾,驗(yàn)證,自動(dòng)完成)

      創(chuàng)建模型類:

             文件名:數(shù)據(jù)表名Model.class.php

             目錄:模塊/model/目錄

             類名:class數(shù)據(jù)表名Model extends Model

             可選屬性:tablePrefixtableName trueTableName dbName _validate(自動(dòng)驗(yàn)證規(guī)則) _auto(自動(dòng)完成規(guī)則)

             添加方法用來實(shí)現(xiàn)業(yè)務(wù)邏輯

             使用:new方法 D()函數(shù)

6.ActivRecord

      表映射到類,記錄映射到對(duì)象

      ORM模型:對(duì)象關(guān)系映射模型

7.session處理

    

   初始化:無需手動(dòng)調(diào)用,除非有特殊需要的時(shí)候

    設(shè)置值:session(鍵,值);

    獲取值:session(鍵);

    刪除值:session(鍵,null);

    判斷值是否存在:session(?鍵);

    模板中使用session:判斷session狀態(tài) 輸出session值

    

    控制器中輸出session  dump($_SESSION);

    

    present標(biāo)簽用于判斷某個(gè)變量是否已經(jīng)定義 

   <present name="Think.session.loginedUser">    歡迎您,{$Think.session.loginedUser}! | <a href="/user/logout">注銷</a>    <else />    您尚未登錄(<a  href='/home/user/login/'>登錄</a>)&nbsp;    還沒有用戶名(<a href='/home/user/register/'>注冊(cè)</a>)    </present>     8.分頁(yè)      頁(yè)面跳轉(zhuǎn) <input type="submit" onclick="window.location.href='/home/msg/addmsg/';" value="添加一個(gè)新討論話題">          分頁(yè)本質(zhì)是:limit查詢 sql語(yǔ)句:select * from msg offset size//從offset開始的size條記錄  分頁(yè)鏈接 /home/msg/index/page/1

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

本文名稱:thinkphp筆記二-創(chuàng)新互聯(lián)
當(dāng)前地址:http://muchs.cn/article32/djjdpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、面包屑導(dǎo)航、網(wǎng)站內(nèi)鏈定制開發(fā)、網(wǎng)站收錄、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司