亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

快速入門ThinkPHP 5.0 --模型篇

難度中級
時長 3小時 0分
學習人數
綜合評分9.67
70人評價 查看評價
10.0 內容實用
9.5 簡潔易懂
9.5 邏輯清晰
  • 插入多條數據http://img1.sycdn.imooc.com//5d7383e000011cf406490303.jpg


    查看全部
    0 采集 收起 來源:添加數據

    2019-09-07

  • 成員方法(get字段名Attr)[字段名首字母大寫]

    在model中使用? ?后面有代碼

    在controller中use下model中的類(該類需繼承model類)

    后利用各種查詢方法獲取數據值

    可利用toArray獲取改后數據

    可利用getData獲取改前數據

    <?php
    namespace?app\index\model;
    use?think\Model;
    class?User?extends?Model{					
    ????????#獲取器的設置?get字段名Attr(注意字段名開頭大寫)	
    ????public?function?getSexAttr($value){		
    ????????switch?($value)?{			
    ????????case?'1':				
    ????????return?'男';				
    ????????break;			
    ????????case?'2':				
    ????????return?'女';				
    ????????break;			
    ????????default:				
    ????????return?'未知';				
    ????????break;		
    ????????}	
    ????}	
    }
    <?php
    namespace?app\index\controller;
    use?think\Controller;
    use?app\index\model\User;
    class?Index?extends?Controller{	
    ???????????public?function?index(){			
    ???????????$res?=?User::get(2);		
    ???????????dump($res->sex);?		
    ???????????dump?($res->toArray());//toArray()獲取改后數據		
    ???????????dump($res->getData());//getData()獲取原始數據			
    ???????????}
    ?????????}


    查看全部
    0 采集 收起 來源:模型獲取器

    2019-07-12

  • <!-- Db::name? 助手函數-->

    Db::name('不加前綴數據庫名')->insert($一維數組) 返回值是影響記錄的行數

    Db::name('不加前綴數據庫名')->insertGetId($一維數組) 返回ID

    Db::name('不加前綴數據庫名')->insertAll($二維數組)? 返回成功插入行數



    查看全部
    0 采集 收起 來源:添加數據

    2019-07-11

  • $res = User::destroy(function($query){

    $query->where('id','<','5'); 使用閉包函數刪除

    //返回影響的行數

    });

    dump($res);


    $userModel =User::get(6);? 先調用后刪除

    $res = $userModel->delete();

    dump($res);


    # 全部刪除("1=1")

    $res = User::where('id','<',8)->delete();? #where方法刪除

    dump($res);


    查看全部
  • ->where('字段名','表達式','值')??

    ->whereOr('字段名','表達式','值')

    $db = Db::name('user');? ? ? ?

    $sql = $db

    ->where('id','in','1,2,3')

    ->whereOr('username','eq','morankin')

    ->whereOr('num','lt','10')

    ->where('email','[email protected]')

    ->buildSql();?

    以上其實就是定義了一個篩選條件但是老師給的這個其實篩選條件沒有什么必要 and 在我這里認為比or是 小一級的(后面會解釋) , 條件滿足id? 為1,2,3,和email 為[email protected]? 或者滿足username 為morankin的? 再或者 滿足 num 小于10的??

    我任務這樣其實我們就有了3個條件

    一個為(id and email )一個為username 一個為num

    其實怎么理解都可以,我這個我比較好理解罷了? 但是這樣的篩選條件其實沒有必要,也可以說無意義的 畢竟是給大家練習的

    不區分大小寫

    EQ? ?=

    NEQ? <>

    LT? ?<

    ELT <=

    GT? >

    EGT >=

    BETWEEM? ?BETWEEN * AND *

    NOTBETWEEN NOTBETWEEN * AND *

    IN? ? IN (*,*)

    NOTIN? ?NOT IN (*,*)


    查看全部
    1 采集 收起 來源:條件構造器

    2019-07-09

  • # delete 返回影響的行數 對數據庫進行刪除 如果想要刪除的為主鍵 可以不需要加where? 直接在delete(添加主鍵id值)

    DB::name(user) ->where(['id'=>1])->delete();

    DB::name(user)->delete(1);


    查看全部
  • update() 返回影響的行數 可以影響一個數組

    setField() 返回影響的行數 只能影響一個字段?

    setInc() 返回影響的行數 每次遞增? 默認遞增值為1

    setDec() 返回影響的行數 每次遞減??默認遞增值為1


    查看全部
  • 版本 調整功能 5.0.9 db助手函數默認不再強制重新
    查看全部
  • value 返回一條記錄 返回的結果并且是字條記錄的某個字段

    ?如果結果不存在返回 NULL

    Db::table('lx1_user')->where(['id'=>'2'])->value('username');


    查看全部
  • ?find 返回一條記錄 返回的結果是一個一維數組? 而其中的where 是為了更準確的查找到所需要的記錄 就是可以添加一個字段名 比如你想要id為1的記錄或者是username為xxx的?

    ->where(['字段名'=>'字段名的數據'])

    Db::table('lx1_user')->where(['id'=>'10']) -> find();


    查看全部
  • 源生方法的數據插入數據表

    ?Db::execute("insert into lx1_user set? ?username=?,password=?,email=?",[?

    'morankin',md5('123'),'[email protected]'

    ]);

    ?是給數據類名一個位置變量

    后面添加數據也是按照前面 ? 的先后排列的??

    數組第一個單元替換前面查詢語句的第一個問號,第二個單元替換第二個問號,以此類推


    查看全部
  • 全局添加更新時間需要在表中新建create_time和update_time字段,配置文件中設置“auto_timestamp"=>true,一般不開啟這個功能,否則表中不存在該字段時會報錯,真正刪除需要把destroy方法或delete方法的第二個參數設置為true

    查看全部
  • 模型獲取器的設置? 注意格式? get字段屬性名Attr? 會自動調用

    查看全部
    0 采集 收起 來源:模型獲取器

    2019-07-03

  • saveAll 可以批量更新內容

    查看全部
  • saveAll? 一次增加多條內容

    查看全部

舉報

0/150
提交
取消
課程須知
1、有一定的php基礎。 2、對ThinkPHP5 有一定的了解。 3、沒有接觸過tp5 的學生可以先看下我之前錄制的 <快速入門 ThinkPHP5 基礎篇>
老師告訴你能學到什么?
1、ThinkPHP5 的數據庫操作類 2、ThinkPHP5 的數據模型 3、使用數據模型快速對數據庫進行增刪改查的操作 4、ThinkPHP5 的自動完成操作 5、模型的自動時間戳和軟刪除

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!