CURD

作者: 慢慢来111 | 来源:发表于2017-03-06 21:06 被阅读13次

    1、数据创建

    html文件   写一个表单
    <form method="post" action="http://localhost/demo/Home/User/create">
       <p>用户<input type="text"  name="user"/><p>
       <p>邮箱<input type="text"  name="email"/><p>
       <input type="submit"  value="提交"/>
    </form>
    name的值必须是数据库中有的字段  当点击提交按钮时这是内容会提交到Home模块User控制器的create方法中
    pulic  function create(){
           $user = M('User');
           var_dump($user->create());
    }
    
    这时候也会回输出
    array(size=2)
    'user' => string '蜡笔小新' (length=12)
    'email' => string 'xiaoxin@qq.com' (length=12)
    PS:这里create()方法就是数据创建,数据的结果就是提交的POST数据的键值对。特别注意的是,提交过来的字段和数据库的字段是对应的,否则无法解析。
    
    //通过数组手工获取数据,覆盖提交的
    $user = M('User');
    $data['user'] = $_POST['user'];
    $data['email'] = $_POST['email'];
    var_dump($user->create($data));
    
    //默认是$_POST,传递$_GET修改
    $user = M(‘User’);
    var_dump($user->create($_Get));
    

    2、数据写入

    //数据写入使用的是add()方法
    //新增一条数据
    $user = M('User');
    $data['user'] = "阿德";
    $data['email'] = 'adsdada';
    $user->add($data);
    add()方法支持的连贯操作有:
    1、table  定义数据表名称
    2、data 制定要写入的数据对象
    3、field  定义要写入的字段
    4、relation  关联查询
    5、validate  数据自动验证
    6、auto  数据自动完成
    7、filter  数据过滤
    8、scope  命名范围
    9、bing  数据绑定操作
    10、token  令牌验证
    11、comment  SQL注释
    

    3、数据读取

    1、where  查询或更新条件
    2、table  要操作的数据表名称
    3、alias  数据表别名
    4、field  查询字段
    5、order  结果排序
    6、group  查询分组
    7、having  分组再查询
    8、join  多表链接查询
    9、union  合并SELECT
    10、distinct  取唯一值
    11、lock  锁
    
    //显示默认所有数据
    $user = M('user');
    var_dump($user->select());
    
    //获取第一条user字段的值
    $user = M('user');
    var_dump($user->getField('user'));
    
    //获取所有user字段的值
    $user = M('user');
    var_dump($user->getField('user', true));
    
    //传递多个字段  获取所有
    $user = M('user');
    var_dump($user->getField('user,email'));//输出的形式是键值对的形式  键是user   值是email
    
    //id冒号分隔
    $user = M('user');
    var_dump($user->getField('id , user,email',‘:’));//输出的形式是id  user  email之间的形式是以冒号分割的。
    

    4、数据更新

    //数据更新使用的方法是save()方法,主要是对数据的修改操作
    //修改第一条数据   通过id找到这条数据  然后再更新这条数据
    $user = M('user');
    $data['user'] = '蜡笔小新';
    $data['email'] = 'daxin@qq.com';
    $map['id'] = 1;
    $user->where($map)->save($data);//成功返回1  否则返回0 
    
    //默认主键为条件
    $user = M('User');
    $data['id'] = 1;
    $data['user'] = '蜡笔小新';
    $data['email'] = 'asdasd';
    $user->save($data);//系统会根据这几个键看那个键是主键 然后来找到这条数据
    
    //修改某一个值
    $user = M('User');
    $map['id'] = 1;
    $user->where($map)->setField('user','蜡笔大仙');
    
    //统计累计, 累加累减
    $user = M('User');
    $map['id'] = 1;
    $user->where($map)->setInc('count' , 1);
    

    5、数据删除

    //直接删除
    $user = M('user');
    $user->delete(12);
    
    //根据ID来删除
    $user = M('User');
    $map['id'] = 16;
    $user->where($map)->delete();
    
    //批量删除多个
    $user = M('User');
    $user->delete(1,2,3);
    
    //输出count为0且按时间倒叙的前5个
    $user = M('user');
    $map['count'] = 0;
    $user->where($map)->order(array('date'=>'DESC'))->limit(5)->delete();
    
    //删除所有数据,谨慎
    $user = M('User');
    echo $user->where('1')->delete();
    
    //delete()方法支持的连贯操作有
    1、where  查询活更新条件
    2、table   要操作的数据表明名称
    3、alias  数据表别名
    4、order 结果排序
    5、lock  锁
    6、relation  关联查询
    7、scope  命名范围
    8、bind  数据绑定操作
    9、comment  SQL注释
    

    6、ActiveReocrd模式

    //这种模式最大的特别就是简化了CURD的操作,并且擦用对象化的操作方式,便于使用和理解
    //添加一条数据
    $user = M('User');
    $user->user = '火影忍者'
    $user->email = 'huoying@qq.com'
    $user-add();
    
    //结合create
    $user = M('User');
    $user->create();
    $user->user = 'asd';
    $user->add();
    
    //找到主键为4的值
    $user = M('User');
    var_dump($user->find(4));
    
    //查找user = 蜡笔小新的记录
    $user = M('User');
    var_dump($user->getByUser('蜡笔小新'));
    
    //输出user
    echo $user->user;
    
    //通过主建查询多个
    $user = M('User');
    var_dump($user->select('1,2,3'));
    
    //修改一条数据
    $user = M('User');
    $user->find(1);
    $user->user = '蜡笔小新'
    $user->save();
    
    //删除当前找到的数据
    $user = M('User');
    $user->find(11);
    $user->delete();
    
    //删除主键为10的数据
    $user = M('User');
    $user->delete(10);
    
    //删除主键为10。11的数据
    $user = M('User');
    $user->delete('10,11');
    
    
    
    
    

    相关文章

      网友评论

          本文标题:CURD

          本文链接:https://www.haomeiwen.com/subject/aqbkgttx.html