yii mode相关操作笔记

来源:互联网 发布:js如何隐藏tr 编辑:程序博客网 时间:2024/05/22 10:55
所有数据的调用控制器部分public function actionView(){          $connection = Yii::app()->db;      $data = $connection->createCommand('select * from tbl_admin ')->query();      $newData = array();      foreach($data as $val){         $newData[] = $val;      }      $this->render("view",array('data'=>$newData));    }视图部分<?php foreach($data as $val):?><h1><?php echo $val['id'].'=='.$val['username'].'=='.$val['password'] ; ?></h1><?php endforeach;?>

带分页的数据调用控制器部分$criteria = new CDbCriteria();$count=TblAdmin::model()->count($criteria);$pages=new CPagination($count);$pages->pageSize=1; //页码$pages->applyLimit($criteria); //limit 0,1 格式控制$criteria->select='id,username,password'; //查询的字段$models = TblAdmin::model()->findAll($criteria);$this->render('view', array('models' => $models,'pages' => $pages));视图部分<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><?php foreach($models as $val): ?>   <h1><?php echo $val['id'].'=='.$val['username'].'=='.$val['password'] ; ?></h1><?php endforeach; ?>// 显示分页<?php $this->widget('CLinkPager', array(    'pages' => $pages,)) ?>

参数的获取$username = Yii::app()->request->getParam('username','username2');参数 username默认值 username2findAll的简单使用$username = Yii::app()->request->getParam('username','username2');$data = TblAdmin::model()->findAll('username=:username',array(':username'=>$username));foreach($data as $val){    echo $val['username']."==".$val['password'];    }
通过主键获取信息单个主键值
$data = TblAdmin::model()->findAllByPk(array(1));foreach($data as $val){    echo $val['username']."==".$val['password']."<br />";}

多个主键值$data = TblAdmin::model()->findAllByPk(array(1,3,5,7));foreach($data as $val){ echo $val['username']."==".$val['password']."<br />";}

findAllByAttributes函数的使用使用第一个参数$data = TblAdmin::model()->findAllByAttributes(array('username'=>'username1','password'=>'password1'));foreach($data as $val){     echo $val['username']."==".$val['password']."<br />";    }完整形式你$data = TblAdmin::model()->findAllByAttributes(array('username'=>'username2'),'password=:password',array(':password'=>'password2'));foreach($data as $val){    echo $val['username']."==".$val['password']."<br />";}


findAllBySql的简单使用$data = TblAdmin::model()->findAllBySql('select * from tbl_admin where username=:username',array(':username'=>'username3'));foreach($data as $val){     echo $val['username']."==".$val['password']."<br />";}
find的简单使用根据一个条件查询出一组数据,可能是多个,但是他只返回第一行数据,如:$data = TblAdmin::model()->find('username=:username',array(':username'=>'username1'));$data = TblAdmin::model()->find(array('condition'=>'username=:username','params'=>array(':username'=>'username1')));
findByAttributes($attributes,$condition,$params);
该方法是根据条件查询一组数据,可以是多个条件,把条件放到数组里面,他查询的也是第一条数据

findBySql($sql,$params);
 该方法是根据SQL语句查询一组数据,他查询的也是第一条数据

CDbCriteria类的简单使用
拼一个获得SQL的方法,在根据find查询出一个对象  $criteria = new CDbCriteria();$criteria->select='username,password';$criteria->condition='username=:username';$criteria->params=array(':username'=>'username3');$data = TblAdmin::model()->find($criteria);echo $data['username'].'==='.$data['password'];取得表中信息的总行数$count = TblAdmin::model()->count();count($condition,$params);该方法是根据一个条件查询一个集合有多少条记录,返回一个int型数字,如  count("username=:name",array(":name"=>$username));   exists($condition,$params)该方法是根据一个条件查询查询得到的数组有没有数据,如果有数据返回一个true,否则没有找到$count = TblAdmin::model()->exists('username=:username',array(':username'=>'username1'));echo (int)$count;
数据的添加$admin = new TblAdmin(); //模型信息$admin->username='username'.$i;$admin->password='password'.$i;if( $admin->save() > 0 ) {echo "成功"."<br />";}else{echo "失败"."<br />";}

修改信息//条件修改$count = TblAdmin::model()->updateAll(array('username'=>'username1111','password'=>'password111'),'username=:username AND password=:password',array(':username'=>'username1',':password'=>'password1'));echo $count; //返回被修改信息的行数//主键修改$count = TblAdmin::model()->updateByPk(array(2),array('username'=>'username222','password'=>'password222'));echo $count; //返回被修改信息的行数updateCounters字段增量的修改Post::model()->updateCounters($counters,$condition,$params);  $count=Admin::model()->updateCounters(array('status'=>1),'username=:name',array(':name'=>'admin')); if($count>0){     echo "修改成功";  }else{     echo "修改失败";  }  array('status'=>1)代表数据库中的admin表根据条件username='admin',查询出的所有结果status字段都自加1


信息的删除//条件查询$count = TblAdmin::model()->deleteAll('username=:username',array(':username'=>'username3'));echo $count;  //删除的数量
$count = TblAdmin::model()->deleteByPk(array(1));
$count = TblAdmin::model()->deleteByPk(array(5,6,7));
echo $count; //删除的数量

                                             
0 0
原创粉丝点击