天天看點

ThinkPHP CURD 操作

Thinkphp CURD操作php中執行個體還對象即可操作 (目錄)

1.Add 1

調式程式 3

調出顯示頁面Trace資訊 3

Dump 的含義 4

2.資料庫查詢 4

1.直接使用字元串進行查找 4

2.使用數組的方式進行查詢 5

3.表達式的方式進行查詢 5

Php中的表達式定義 6

4.區間查詢 6

5.混合用法  6

6. 統計用法 7

3.更新操作 8

4.删除操作 8

1.Add

$data=array(

'user_name'=>'xiaoming',

'nick_name'=>'小米',

'password'=>md5('123456'),

'score'=>'100',

'create_date'=>date('Y-m-d H:i:s'),

'update_date'=>date('Y-m-d H:i:s'),

);

     echo M('user')->add($data);

二維數組插入

    $data=array(

    0=>array(

         'user_name'=>'xiaoming',

         'nick_name'=>'小米',

         'password'=>md5('123456'),

         'score'=>'100',

         'create_date'=>date('Y-m-d H:i:s'),

         'update_date'=>date('Y-m-d H:i:s'),

     ),

    1=>array(

    'user_name'=>'xiaoming',

    'nick_name'=>'小wo',

    'password'=>md5('123456'),

    'score'=>'100',

    'create_date'=>date('Y-m-d H:i:s'),

    'update_date'=>date('Y-m-d H:i:s'),

),

    2=>array(

    'user_name'=>'xiaoming',

    'nick_name'=>'小sd',

    'password'=>md5('123456'),

    'score'=>'100',

    'create_date'=>date('Y-m-d H:i:s'),

    'update_date'=>date('Y-m-d H:i:s'),

),

    3=>array(

    'user_name'=>'xiaoming',

    'nick_name'=>'小fd',

    'password'=>md5('123456'),

    'score'=>'100',

    'create_date'=>date('Y-m-d H:i:s'),

    'update_date'=>date('Y-m-d H:i:s'),

)

//二維數組如何一次性插入進去

);

     echo M('user')->addAll($data);

}

調式程式

調出顯示頁面Trace資訊

'

SHOW_PAGE_TRACE'=>true,//顯示頁面Trace資訊

<?php

return array(

   //'配置項'=>'配置值'

   // 'name'=>'Donsen2',

    'LOAD_EXT_CONFIG'=>'user',

    'URL_MODEL'=> 2,

    'URL_HTML_SUFFIX'  =>  'shtml|html|xml',  // URL僞靜态字尾設定

    'SHOW_PAGE_TRACE'=>true,//顯示頁面Trace資訊

);

$this->display();

Dump 的含義

​​var_dump​​​是php用來 列印 變量的 函數 用作 調試

dump ThinkPHP 架構 自定義的  用作架構變量 調試用的輸出 功能可以說和 ​​​var_dump​​一樣的

2.資料庫查詢

資料庫查詢   所有的資料

public functionindex()

{

    //select 查詢

     $data=M('User')->select();

     dump($data);

     $this->display();

}

1.直接使用字元串進行查找

public function index()

{

    //select 查詢

    //直接使用字元串進行查找

     $data=M('User')->where('id=1')->select();

     dump($data);

     $this->display();

}

2.使用數組的方式進行查詢

public function index()

{

    //select 查詢

    //使用數組的方式進行查詢

     $where['id']=2;

     $data=M('User')->where($where)->select();

     dump($data);

     $this->display();

}

查詢 id為小明

//select 查詢

//使用數組的方式進行查詢

 $where['id']=2;

 $where['user_name']='xiaoming';

 //SELECT * FROM `mk_user` WHERE `id` = 2 AND `user_name` = 'kitte' [ RunTime:0.0030s ]

//and  變成 or

$where['_logic']='or';//SELECT * FROM `mk_user` WHERE `id` = 2 OR `user_name` = 'xiaoming' [ RunTime:0.0010s ]

 $data=M('User')->where($where)->select();

 dump($data);

 $this->display();

3.表達式的方式進行查詢

//select 查詢

//表達式的方式進行查詢 eq neq egt gt lt elt between in like not between

// $where['字段名']=array(表達式,查詢條件)

 $where['id']=array('gt',1);

 $data=M('User')->where($where)->select();

 dump($data);

 $this->display();

Php中的表達式定義

eq 等于

neq 不等于

gt 大于

egt 大于等于

lt 小于

elt 小于等于

like LIKE    模糊查詢    ('like','ming');

數組查詢

$where['user_name']=array('like',array('%ming','xiao%'));

between BETWEEN    ('between','1,8');

notnull IS NUT NULL

null IS NULL

egf 是表示資料庫的字段比較,而非字元串比較

例如:

$map['name']  = array('eq','label'); 和

$map['name'] = array('eqf','label');

分别代表 name = 'label' 和 name = label 

同樣的道理,gt lt 等其他表達式也可以在後面添加f來表示同樣的功能~

4.區間查詢

附加   與between 比較類似  是官方裡面的區間查詢

$where['id']=array(array('gt',1),array('lt',10));  

SELECT * FROM `mk_user` WHERE ( `id` > 1 AND `id` < 10 )

And和or的差別  一個要同時滿足  一個是滿足其中一個關系

5.混合用法   查詢 id>10  score>10   

 //混合用法

$where['id']=array('gt',10);

$where['_string']='score>10';

$data=M('User')->where($where)->select();

dump($data);

$this->display();

用表達式查詢和區間查詢就能查詢就不要用混合方式,也不要用字元串的方式查詢

表達式可以使資料庫避免注入

6.統計用法

public function index()

{

      //統計用法

    /*

     * count 統計數量

     * max 擷取最大值

     * min 最小值

     * avg 平均值

     * sum 求和

      * */

     $data=M('User')->count();

     dump($data);

     $this->display();

}

  1. SELECT COUNT(*) AS tp_count FROM `mk_user` LIMIT 1 [ RunTime:0.1470s ]

$data=M('User')->max(id);

  1. SELECT MAX(id) AS tp_max FROM `mk_user` LIMIT 1 [ RunTime:0.0210s ]

string(1) "9"

查詢平均分成績

$data=M('User')->avg('score');

  1. SELECT AVG(score) AS tp_avg FROM `mk_user` LIMIT 1 [ RunTime:0.0000s ]

3.更新操作

 //更新操作

$update['score']=60;

$where['id']=1;

$data=M('User')->where($where)->save($update);

dump($data);

$this->display();

  1. UPDATE `mk_user` SET `score`='60' WHERE `id` = 1 [ RunTime:0.0000s ]

4.删除操作

public function index()

{

    $where['id']=1;

    echo M('User')->where($where)->delete();

    $this->display();

}

  1. DELETE FROM `mk_user` WHERE `id` = 1 [ RunTime:0.0000s ]