Maison  >  Article  >  développement back-end  >  Fonctionnement CURD de yii

Fonctionnement CURD de yii

不言
不言original
2018-04-20 13:31:551443parcourir

Cet article présente principalement les compétences opérationnelles CURD de yii et analyse en détail l'utilisation spécifique de l'ajout, de la suppression, de la modification et des requêtes basées sur le framework yii sous la forme d'exemples auxquels les amis dans le besoin peuvent se référer. cet article

L'exemple décrit les compétences opérationnelles CURD de Yii. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

CURD est une abréviation dans la technologie des bases de données. Les fonctions de base de divers paramètres dans le développement général de projets sont CURD. Il représente les opérations de création, de mise à jour, de récupération et de suppression. Cet article parle du fonctionnement CURD du framework Yii.

1. Requête de collecte de données

1.

Copier le code Le code est le suivant :

$admin=Admin::model()->findAll($condition,$params);

Cette méthode interroge une collection en fonction d'une condition, telle que :

Copier le code Le code est le suivant :

findAll('username=:name',array(':name'=>$username));

2,

Copier le code Le code est le suivant :

$admin=Admin::model()->findAllByPk($postIDs,$condition,$params);
findAllByPk($id,'name like ':name' and age=:age',array(':name'=>$name,'age'=>$age));

Cette méthode consiste à interroger une collection basée sur la clé primaire. Plusieurs clés primaires peuvent être utilisées, telles que :

Copier le Code Le Code est le suivant : Une condition, mettre la condition dans le tableau, par exemple :

findAllByPk(array(1,2));

Copier le Code

Le Code est comme suit :

4,

$admin=Admin::model()-> findAllByAttributes($attributes,$condition,$params);

Copier le code

Le code est le suivant :

Cette méthode consiste à interroger un tableau basé sur l'instruction SQL, telle que :

findAllByAttributes(array('username'=>'admin'));

Copiez le code

Le code est le suivant :

Méthodes d'interrogation des objets
$admin=Admin::model()->findAllBySql($sql,$params);

1.

Copier le code Le code est le suivant :

findAllBySql('select *from admin whereusername=:name',array(':name'=>'admin'));

Interroger un objet basé sur la clé primaire, tel que : findByPk(1);2,

Copier le code

Le code est le suivant :

Selon une condition interroge un ensemble de data, qui peuvent être multiples, mais elle ne renvoie que la première ligne de données, telles que :
$admin=Admin::model()->findByPk($postID,$condition,$params);

Copier le code

Le code est le suivant :

3 .

$row=Admin::model()->find($condition,$params);
Copier le code

Le code est le suivant :

Cette méthode consiste à interroger un ensemble de données en fonction de conditions, qui peuvent être plusieurs conditions, et mettez les conditions dans un tableau, il interroge également la première donnée, telle que :

find('username=:name',array(':name'=>'admin'));
Copier le code

Le code est le suivant :

4 ,

$admin=Admin::model()-> findByAttributes($attributes,$condition,$params);
Copier le code

Le code est le suivant :

Cette méthode consiste à interroger un ensemble de données basé sur des instructions SQL, et elle interroge également la première morceau de données, tel que :

findByAttributes(array('username'=>'admin'));
Copier le code

Le code est le suivant :

5. Créez une méthode pour obtenir SQL et interrogez un objet basé lors de la recherche

$admin=Admin::model()->findBySql($sql,$params);
Copiez le code

Le code est le suivant :

Interrogez le numéro et déterminez si la requête a des résultats

findBySql('select *from admin whereusername=:name',array(':name'=>'admin'));

1.

Copiez le code Le code est le suivant :

$criteria=new CDbCriteria;
$criteria->select='username'; // only select the 'title' column
$criteria->condition='username=:username';
$criteria->params=array(':username=>'admin');
$post=Post::model()->find($criteria); // $params isnot needed

Cette méthode consiste à interroger le nombre d'enregistrements qu'il y a dans un collection basée sur une condition et renvoie un numéro int, tel que

Copier le code

Le code est le suivant :

2.

$n=Post::model()->count($condition,$params);
Copier le code

Le code est le suivant :

Cette méthode consiste à interroger le nombre d'enregistrements d'une collection selon l'instruction SQL et à renvoyer un nombre de type int, tel que

count('username=:name',array(':name'=>$username));
Copier le code

Le code est le suivant :

3,

$n=Post::model()->countBySql($sql,$params);
Copier le code

Le code est le suivant :

Cette méthode consiste à demander si le tableau obtenu contient des données basées sur une condition. S'il y a des données, elle renvoie un vrai, sinon elle n'est pas trouvée

countBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
4. . Méthode ajoutée

$exists=Post::model()->exists($condition,$params);
Copier le code

Le code est le suivant :

5. Méthode de modification


1.

Copier le codeLe code est le suivant :

$admin=newAdmin;
$admin->username=$username;
$admin->password=$password;
if($admin->save()>0){
echo '添加成功';
}else{
echo '添加失败';
}

2.

Copier le code

Le code est le suivant :

$pk représente la clé primaire, qui peut être une ou un ensemble, $attributes représente l'ensemble des champs à modifier, $ condition représente la condition, et la valeur transmise par $params

3 ,
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 '修改失败';
}

Copiez le code

Le code est le suivant :

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 '修改失败';
}
6. Méthode de suppression

1.

复制代码 代码如下:

Post::model()->deleteAll($condition,$params);
$count = Admin::model()->deleteAll('username=:nameandpassword=:pass',array(':name'=>'admin',':pass'=>'admin'));
$id=1,2,3
deleteAll('id in('.$id.')');删除id为这些的数据
if($count>0){
echo '删除成功';
}else{
echo '删除失败';
}

2、

复制代码 代码如下:

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 '删除失败';
}

相关推荐:

yii2 resetful 的授权验证

Yii2.0 PHP使用Sphinx


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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn