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 :
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'aime | j'aime | $map['username'] = array('like','Admin% '); | nom d'utilisateur comme 'Admin%' |
entre | entre et | $map['id'] = array('between','1,8'); | id ENTRE 1 AND 8 |
pas entre | pas entre et | $map['id'] = array('pas entre','1, 8'); | id PAS ENTRE 1 ET 8 |
dans | dans | $map['id'] = array('in','1,5,8'); | id in(1,5,8) |
pas dans | pas 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) |
ou | ou | $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['id'] = array('not in','1,5,8'); $map['id'] = array('not in',array('1','5','8'));
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['aid'] = 10; $data['counter'] = array('exp','counter+1'); // 根据条件保存修改的数据 $User->save($data);
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!