Comment utiliser les expressions de requête dans thinkPHP

不言
Libérer: 2023-03-30 13:56:01
original
1239 Les gens l'ont consulté

Cet article présente principalement l'utilisation de la requête d'expression dans thinkPHP et analyse le format de la requête d'expression thinkPHP et l'utilisation des opérateurs associés sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

Les exemples. dans cet article, décrivez la requête d'expression thinkPHP. Partagez-le avec tout le monde pour référence, comme suit :

Expressions ThinkPHP

Les expressions mentionnées ici font référence aux expressions uniques du framework ThinkPHP. Ces expressions sont utilisées dans les conditions Where et les balises de modèle pour des opérations telles que l'interrogation ou la mise à jour et la suppression.

Où l'expression est utilisée dans la condition

Où le format de l'expression conditionnelle est :

$map['field name'] = array ('expression', 'condition de fonctionnement');

où $map est une variable de tableau ordinaire, qui peut être nommée selon vos propres besoins. L'expression au format ci-dessus est en fait la signification de l'opérateur :

Tableau de comparaison des opérateurs ThinkPHP et SQL
Opérateur TP Opérateur SQL Exemple Requête réelle conditions
eq = $map['id'] = array('eq',100); Équivalent à : $map['id'] = 100;
neq != $map['id'] = array('neq',100); id != 100
gt > $map['id'] = array('gt',100); id > ; 100
egt >= $map['id'] = array('egt',100); identifiant >= 100
lt <$map['id'] = array('lt',100);id < 100
elt<=$map['id'] = array('elt',100);id <= 100
j'aimej'aime$map['username'] = array('like','Admin% ');nom d'utilisateur comme 'Admin%'
entreentre et$map['id'] = array('between','1,8');id ENTRE 1 AND 8
pas entrepas entre et$map['id'] = array('pas entre','1, 8');id PAS ENTRE 1 ET 8
dansdans$map['id'] = array('in','1,5,8');id in(1,5,8)
pas danspas dans$map['id'] = array('not in','1,5,8');id not in(1,5,8)
et(默认)et$map['id'] = array (array('gt',1),array('lt',10));(id > 1) ET (id < 10)
ouou$map['id'] = array(array('gt',3),array('lt',10), 'or');(identifiant > 3) OU (identifiant < 10)
xor (OU exclusif) xor Quand une seule des deux entrées est vraie, le résultat est vrai, sinon il est faux L'exemple est omis. 1 xor 1 = 0
exp Expression complète $map['id'] = array(' exp ','in(1,3,8'); $map['id'] = array('in','1,3,8');

Notes supplémentaires

Comme SQL, les opérateurs ThinkPHP ne sont pas sensibles à la casse, l'eq est identique à l'EQ.

entre et dans les conditions prennent en charge les chaînes ou les tableaux, c'est-à-dire que les deux méthodes d'écriture suivantes sont équivalentes :

$map[&#39;id&#39;] = array(&#39;not in&#39;,&#39;1,5,8&#39;);
$map[&#39;id&#39;] = array(&#39;not in&#39;,array(&#39;1&#39;,&#39;5&#39;,&#39;8&#39;));
Copier après la connexion

expression exp

exp dans le tableau ci-dessus n'est pas un opérateur, mais une expression complète pour prendre en charge des paramètres de conditions plus complexes. Les conditions de fonctionnement de exp ne sont pas traitées comme des chaînes et peuvent utiliser n'importe quelle syntaxe prise en charge par SQL, y compris l'utilisation de fonctions et de noms de champs.

exp n'est pas seulement utilisé pour les conditions où, mais également pour les mises à jour des données, telles que :

$Dao = M("Article");
// 构建 save 的数据数组,文章点击数+1
$data[&#39;aid&#39;] = 10;
$data[&#39;counter&#39;] = array(&#39;exp&#39;,&#39;counter+1&#39;);
// 根据条件保存修改的数据
$User->save($data);
Copier après la connexion

Remarque : pour l'ajout de champs numériques Pour réduire, vous pouvez utiliser directement

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Expressions couramment utilisées dans les conditions Where dans ThinkPHP

Thinkphp5.0 génère automatiquement des modules et des répertoires Méthode

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