zoukankan      html  css  js  c++  java
  • 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_dumpphp用来 打印 变量的 函数 用作 调试
    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 ]

      懒惰删除id

    echo  M('User')->delete(2);
    $this->display();

  • 相关阅读:
    Nginx 配置文件
    Nginx 目录结构
    Nginx 功能模块
    logrotate日志管理工具
    Nginx 编译安装
    CentOS7安装Tomcat
    springcloud如何实现服务的平滑发布
    springcloud zuul聚合微服务的swagger文档
    alibaba的springcloud孵化器项目
    springcloud灰度发布实现方案
  • 原文地址:https://www.cnblogs.com/mike-mei/p/7357544.html
Copyright © 2011-2022 走看看