Heim > php教程 > php手册 > Yii 关于 find findAll 查找出制定的字段的方法,yiifindall

Yii 关于 find findAll 查找出制定的字段的方法,yiifindall

WBOY
Freigeben: 2016-06-13 09:25:54
Original
1029 Leute haben es durchsucht

Yii 关于 find findAll 查找出制定的字段的方法,yiifindall

总所周知

modelName::model() -> find()    <span>//</span><span>找出的是一个对象</span>
modelName::model() -> findALL()  <span>//</span><span>找出的是一个对象集合的数组</span>
Nach dem Login kopieren

如何找出我所需要的字段的数据,而不是全部字段的数据

之前我是这么做的

<span>$criteria</span> = <span>new</span><span> CDbCriteria;
</span><span>$criteria</span>->select = 'username,id,email'<span>;
</span><span>$criteria</span>->order = 'id DESC'<span>;
</span><span>$users</span> = modelName::model()->findAll( <span>$criteria</span> );
Nach dem Login kopieren

后台无意中看到别人有这么写的,发现自己是多么的无知

<span>$users</span> = modelName::model()->findAll(<span>array</span><span>(
    </span>'select' =><span>array</span>('username','id','email'),
    'order' => 'id DESC',<span> 
));</span>
Nach dem Login kopieren

测试后发现果然可以用,那么find也可以这么操作

<span>$user</span> = modelName::model()->find(<span>array</span><span>(
    </span>'select' =><span>array</span>('username','id','email'),
    'order' => 'id DESC',
    'condition' => 'id='.$id,<span>
));</span>
Nach dem Login kopieren

当然了,这么做肯定不安全了,换成下面的方法同样可以

<span>$users</span> = <span>$this</span>->user->find(<span>array</span><span>(
    </span>'select'=><span>array</span>('id','username','email'),
    'order' => 'id DESC',
    'condition' => 'state=:state AND id=:id',
    'params' => <span>array</span>(':state'=>'1',':id' => '2'),<span>
));</span>
Nach dem Login kopieren

同理用findAll测试了也可以,结论

通过这种方法能够很方便的获取所需要的数据,当然需要分页的时候还是 需要 new 以下 CDbCriteria 的

yii框架,$retrievedProject=Project::model()->findall(); 怎输出?

$retrievedProject=Project::model()->findall();
foreach($retrievedProject as $v){
echo $v->attributes['title'];
}
 

yii 查询语句写法

这样写:
$db = new CDbCriteria();
$db->addInCondition('id', array(1,2,3));
$newstypelist=NewsType::model()->findAll($db);
 

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage