Langages de requête couramment utilisés dans ThinkPHP

不言
Libérer: 2023-03-30 16:34:01
original
1359 Les gens l'ont consulté

Cet article présente principalement un résumé des langages de requête courants dans ThinkPHP. C'est une technique couramment utilisée dans ThinkPHP. Elle est très pratique dans le développement de projets.

Ceci. L'article résume les exemples de langages de requête ThinkPHP couramment utilisés. Je pense que cela peut apporter une certaine aide au développement ThinkPHP de chacun. Les détails sont les suivants :

1. Requête ordinaire :

Dans la requête, il y a au moins trois formes

1. Forme de chaîne de caractères :

&#39;id>5 and id<9&#39;
Copier après la connexion

2. Forme de tableau :

L'exemple de code est le suivant suit :

$user=M(&#39;user&#39;);
$data[&#39;username&#39;]=&#39;liwenkai&#39;;
$list=$user->where(array(&#39;username&#39;=>&#39;liwenkai&#39;))->select();
$list=$user->where($data)->select();
Copier après la connexion

3. Forme d'objet :

L'exemple de code est le suivant :

$user=M(&#39;user&#39;);
$a=new stdClass();
$a->username=&#39;liwenkai&#39;;
$list=$user->where($a)->select();
Copier après la connexion

4. Expression de requête :

EQ                                                                                                                                                                                           Supérieur ou égal à
LT Inférieur à
ELT Inférieur ou égal à
LIKE Équivalent à like
[NOT] dans SQL BETWEEN Plage de requête
[NOT] IN Ensemble de requêtes
EXP       fait référence à l'utilisation d'instructions SQL standard pour réaliser des situations plus complexes

Formulaires courants :

$data[&#39;字段名&#39;]=array(&#39;是表达式&#39;,&#39;查询条件&#39;);
Copier après la connexion
En plus

$data[&#39;liwenkai&#39;]=&#39;liwenkai&#39;;
Copier après la connexion
est en fait équivalent à

$data[&#39;liwenkai&#39;]=array(&#39;eq&#39;,&#39;liwenkai&#39;);
Copier après la connexion
. Les exemples sont les suivants :

.
$data[&#39;username&#39;]=array(&#39;like&#39;,&#39;peng%&#39;);
$list=$user->where($data)->select();
Copier après la connexion

2. Requête d'intervalle :

L'exemple est le suivant :

$user=M(&#39;user&#39;);
$data[&#39;id&#39;]=array(array(&#39;gt&#39;,20),array(&#39;lt&#39;,23),&#39;and&#39;);
$list=$user->where($data)->select();
dump($list);
Copier après la connexion

$data[&#39;username&#39;]=array(array(&#39;like&#39;,&#39;p%&#39;),array(&#39;like&#39;,&#39;h%&#39;),&#39;or&#39;);
Copier après la connexion

3. Requête combinée :

L'exemple est le suivant :

$user=M(&#39;user&#39;);
$data[&#39;username&#39;]=&#39;pengyanjie&#39;;
$data[&#39;password&#39;]=array(&#39;eq&#39;,&#39;pengyanjie&#39;);
$data[&#39;id&#39;]=array(&#39;lt&#39;,30);
$data[&#39;_logic&#39;]=&#39;or&#39;;
$list=$user->where($data)->select();
dump($list);
Copier après la connexion

4. Requête composée :

Les exemples sont les suivants :

$user=M(&#39;user&#39;);
$data[&#39;username&#39;]=array(&#39;eq&#39;,&#39;pengyanjie&#39;);
$data[&#39;password&#39;]=array(&#39;like&#39;,&#39;p%&#39;);
$data[&#39;_logic&#39;]=&#39;or&#39;;
$where[&#39;_complex&#39;]=$where;
$where[&#39;id&#39;]=array(&#39;lt&#39;,30);
$list=$user->where($data)->select();
dump($list);
Copier après la connexion
est équivalent à

(id<30)and ( (username=pengyanjie) or (password like p%) )
Copier après la connexion

5. Requête statistique :

L'exemple est le suivant :

echo $user->count();
echo &#39;<br>&#39;;
echo $user->max(&#39;id&#39;);
echo &#39;<br>&#39;;
echo $user->where(&#39;id<30&#39;)->min(&#39;id&#39;);
echo &#39;<br>&#39;;
echo $user->avg(&#39;id&#39;);
echo &#39;<br>&#39;;
echo $user->sum(&#39;id&#39;);
Copier après la connexion

6. Requête de positionnement :

Les exemples sont les suivants :

$user=new AdvModel(&#39;user&#39;);//实例化高级模型AdvModel
//$user=M(&#39;user&#39;,&#39;CommonModel&#39;);//或者将AdvModel用CommonModel来继承
$list=$user->order(&#39;id desc&#39;)->getN(2);//返回结果中的第三条
dump($list);

$list=$user->order(&#39;id desc&#39;)->last();//返回最后一条
$list=$user->order(&#39;id desc&#39;)->first();//返回第一条
Copier après la connexion

7. Requête SQL :

1.excute() est principalement utilisé pour la mise à jour et l'écriture :

$Model = new Model() // 实例化一个 model 对象  没有对应任何数据表
$Model->execute( "update think_user set name=&#39;thinkPHP&#39; where status=1" );
Copier après la connexion

2.query() est principalement utilisé pour la requête :

$user=M();
$list=$user->query(&#39;select * from aoli_user order by id desc&#39;);
dump($list);
Copier après la connexion

8. Requête dynamique

Les exemples sont les suivants :

$user=M(&#39;user&#39;);
$list=$user->getByusername(&#39;pengyanjie&#39;);
$list=$user->getByusername(&#39;pengyanjie&#39;);
dump($list);
Copier après la connexion

$user=new AdvModel(&#39;user&#39;);
$list=$user->top5();//前5条
dump($list);
Copier après la connexion
C'est tout pour cet article. L'intégralité du contenu, j'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Comment exécuter des instructions SQL natives dans le framework thinkPHP


ThinkPHP implémente la conversion du résultat de la requête de base de données données au type correspondant


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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal