Yii Framework. I list out all types of find, findall conditions in yii framework. It will very helpful for us.
Yii find()
find()
<?php
$model = User::model()->find();
find() With Condition
<?php
$model = User::model()->find('userid=1 AND status="A"');
(OR)
$model = User::model()->find(
'userid=:userId And status=:Status',
array(':userId'=>1,':status'=>'A')
);
find() Width Criteria
<?php
$criteria = new CDbCriteria;
$criteria->condition='userid=1 AND status="A"';
$model = User::model()->find($criteria);
(OR)
$criteria=new CDbCriteria;
$criteria->condition='userid=:userId AND status=:Status';
$criteria->params=array(':userId'=>10,':Status'=>'A');
$model=User::model()->find($criteria);
find() Max Id
<?php
$criteria=new CDbCriteria;
$criteria->select='max(userid) as id';
$model = User->model()->find($criteria);
Yii findAll()
findAll()
<?php
$model=User::model()->findAll();
findAll() With Select
<?php
$model=User::model()->findAll(array(
'select'=>'userid, username'
));
findAll() With Conditon
<?php
$model=User::model()->findAll(
array(
'select'=>'userid, username',
'condition'=>'status="A"'
));
findAll() With Conditon, Group
<?php
$model=User::model()->findAll(
array(
'condition'=>'status="A"',
'group'=>'type'
));
findAll() With Conditon, Order
<?php
$model=User::model()->findAll(
array(
'select'=>'userid,username',
'condition'=>'status="A"',
'order'=>'username'
));
findAll() With limit
<?php
$model=User::model()->findAll(
array(
'condition'=>'status="A"',
'limit'=>'5'
));
findAll() "with()" function
<?php
$model=User::model()->with('login')
->findAll(array(
'select'=>'t.userid,t.username,login.time',
'condition'=>'login.satus="L"'
));
findAllByPk Array value
<php
$usermodel=User::model()->findAllByPk($useridarray);
$usermodel=User::model()->findAllByPk(array(2,3,10));
?>
Yii findAll() Join
findAll inner join
<php
$categorymodel=Category::model()->with(array(
'user'=>array(
'select'=>'categoryname',
'joinType'=>'INNER JOIN',
'condition'=>'user.categoryname="activeuser"',
),
))->findAll();
?>
Yii Sql command
Yii findAll() by Sql command
public function findallbysql()
{
$categorylist=Yii::app()->db->createCommand("
SELECT category.categoryid as categoryid,category.categoryname as categoryname
FROM `documentindex` `t`
LEFT OUTER JOIN `tbl_category` `category` ON (`t`.`categoryid`=`category`.`categoryid`)
WHERE category.isactive=1 group by t.categoryid")
->queryAll();
$category_array["all"]="All";
foreach($categorylist as $data)
{
$category_array[$data['categoryid']]=$data['categoryname'];
}
return $category_array;
}
-
Saman