Maison > Article > développement back-end > À propos de l'ajout, de la suppression et de la modification du framework Yii
Cet article présente principalement l'ajout, la suppression, la modification et la vérification du framework Yii. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
1. Interroger des données
1. findAll (interroger une collection en fonction d'une condition)$admin=Admin::model()->findAll($condition,$params); $admin=Admin::model()->findAll("username=:name",array(":name"=>$username)); $admin=Admin::model()->findAll(“username=:name and age=:age” , array(“:name”=>$name, “age”=>$age)); $admin=Admin::model()->findAll(“username like :name and age=:age” , array(“:name”=>$name, “age”=>$age)); $infoArr= NewsList::model()->findAll("status = '1' ORDER BY id DESC limit 10 ");2. findAllByPk (interroger une collection en fonction de la clé primaire). , plusieurs clés primaires peuvent être utilisées)
$admin=Admin::model()->findAllByPk($postIDs,$condition,$params); $admin=Admin::model()->findAllByPk($id,"name like :name and age=:age",array(':name'=>$name,'age'=>$age)); $admin=Admin::model()->findAllByPk(array(1,2));3. findAllByAttributes (interroger une collection en fonction de conditions, qui peuvent être plusieurs conditions, et placer les conditions dans un tableau)
$admin=Admin::model()->findAllByAttributes($attributes,$condition,$params); $admin=Admin::model()->findAllByAttributes(array('username'=>'admin'));4. findAllBySql (interroger un tableau basé sur l'instruction SQL)
$admin=Admin::model()->findAllBySql($sql,$params); $admin=Admin::model()->findAllBySql("select * from admin where username like :name",array(':name'=>'%ad%'));5. (interroger un objet en fonction de la clé primaire)
$admin=Admin::model()->findByPk($postID,$condition,$params); $admin=Admin::model()->findByPk(1);6. find (interroger un ensemble de données en fonction d'une condition, il peut y en avoir plusieurs, seule la première ligne de données est renvoyée)
$row=Admin::model()->find($condition,$params); $row=Admin::model()->find('username=:name',array(':name'=>'admin'));7. findByAttributes (interroger un ensemble de données en fonction de conditions, qui peuvent être plusieurs conditions, mettre les conditions dans le tableau et interroger le premier élément de données)
$admin=Admin::model()->findByAttributes($attributes,$condition,$params); $admin=Admin::model()->findByAttributes(array('username'=>'admin'));8. findBySql (interroger un ensemble de données basé sur une instruction SQL, interroger les premières données)
$admin=Admin::model()->findBySql($sql,$params); $admin=Admin::model()->findBySql("select * from admin where username=:name",array(':name'=>'admin'));9. count (demander combien d'enregistrements il y a dans une collection en fonction d'une condition, renvoyer un nombre int)
$count=Post::model()->count($condition,$params); $count=Post::model()->count("username=:name",array(":name"=>$username));10. countBySql (selon SQL, l'instruction demande combien d'enregistrements il y a dans une collection et renvoie un nombre entier)
$count=Post::model()->countBySql($sql,$params); $count=Post::model()->countBySql("select * from admin where username=:name",array(':name'=>'admin'));11. existe (requête basée sur une condition pour voir si le tableau a obtenu des données, s'il y a des données, renvoie un vrai, sinon elle n'est pas trouvée)
$exists=Post::model()->exists($condition,$params); $exists=Post::model()->exists("name=:name",array(":name"=>$username));
2. Ajouter des données
enregistrer (ajouter des données)$admin=new Admin; $admin->username =$username; $admin->password =$password; if($admin->save() > 0){echo"添加成功"; }else{echo"添加失败"; }
3. Modifier les données
update($pk clé primaire, qui peut être une ou un ensemble, $attributs doit être modifié Une collection de champs, $condition condition, valeur transmise par $params)Post::model()->updateAll($attributes,$condition,$params); $count=Admin::model()->updateAll(array('username'=>'11111','password'=>'11111'),'password=:pass',array(':pass'=>'1111a1')); if($count> 0){echo "修改成功"; }else{echo"修改失败"; } $result=PostList::model()->updateAll(array('status'=>'1'),'staff_id=:staff and host_id=:host',array(':staff'=>$staff_id,':host'=>$host_id))
Post::model()->updateByPk($pk,$attributes,$condition,$params); $count=Admin::model()->updateByPk(1,array('username'=>'admin','password'=>'admin')); $count=Admin::model()->updateByPk(array(1,2),array('username'=>'admin','password'=>'admin'),'username=:name',array(':name'=>'admin')); if($count>0){echo"修改成功"; }else{echo"修改失败"; } 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) représente la table admin dans la base de données selon la condition username='admin ', les champs status de tous les résultats de la requête sont incrémenté de 1
4. Supprimer les données
deletePost::model()->deleteAll($condition,$params); $count=Admin::model()->deleteAll('username=:nameandpassword=:pass',array(':name'=>'admin',':pass'=>'admin')); $count= Admin::model()->deleteAll('id in("1,2,3")');//删除id为这些的数据 if($count>0){echo"删除成功"; }else{echo"删除失败"; } Post::model()->deleteByPk($pk,$condition,$params); $count= Admin::model()->deleteByPk(1); $count=Admin::model()->deleteByPk(array(1,2),'username=:name',array(':name'=>'admin')); if($count>0){echo"删除成功"; }else{echo"删除失败"; }
5. createCommand
$sql="SELECT u.account,i.* FROM sys_user as u left join user_info as i on u.id=i.user_id"; $rows=Yii::app()->db->createCommand($sql)->query(); foreach($rowsas $k => $v){ echo$v['add_time']; }
6. Traitement des transactions
$dbTrans= Yii::app()->db->beginTransaction(); try{ $post=new Post; $post->'title'='Hello dodobook!!!'; if(!$post->save()){ throw new Exception("Error Processing Request", 1); } $dbTrans->commit(); $this->_end(0,'添加成功!!!'); }catch(Exception$e){ $dbTrans->rollback(); $this->_end($e->getCode(),$e->getMessage()); }Recommandations associées :
Explication sur la façon dont PHP permet aux éléments ayant la même valeur dans un tableau de former un nouveau tableau
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!