この記事では主に thinkPHP の式クエリの使用法を紹介し、thinkPHP の式クエリの形式と関連する演算子の使用法を例の形式で分析します。必要な方は参考にしてください。
この記事の例。 thinkPHP 式クエリを説明します。参考のために皆さんと共有してください。詳細は次のとおりです。
ThinkPHP 式
ここで説明されている式は、ThinkPHP フレームワークの固有の式を指します。これらの式は、クエリ、更新、削除などの操作の where 条件とテンプレート タグで使用されます。
条件で式が使用される場所
条件式の形式は次のとおりです:
$map['フィールド名'] = array ( '式', '動作条件');
ここで、$map は通常の配列変数であり、必要に応じて名前を付けることができます。上記の形式の式は、実際には演算子の意味です:
TP 演算子 | SQL 演算子 | 例 | 実際のクエリ条件 |
---|---|---|---|
eq | = | $map['id'] = array('eq',100); | 以下と同等: $map['id'] = 100; |
even | != | $map['id'] = array('even',100); | id != 100 |
gt | > | $map['id'] = array('gt',100); | id > ; 100 |
egt | >= | $map['id'] = array('egt',100); | # ; ##id >= 100|
lt | < | $map['id'] = array('lt',100); | id < 100 |
elt | <= | $map['id'] = array('elt',100); | id <= 100 |
like | like | $map['ユーザー名'] = array('like','Admin% '); | ユーザー名 (例: 'Admin%') |
between | between と | $map['id'] = array('between','1,8'); | id BETWEEN 1 と 8 |
間にはありません | 間にはありませんと | $map['id'] = array('間にはありません','1, 8'); | id が 1 と 8 の間ではありません |
in | in | $map['id'] = array('in','1,5,8'); | id in(1,5,8) |
not in | $map['id'] = array('not in','1,5,8'); | id は (1,5,8) | |
and | $map['id'] = 配列にありません(array('gt',1),array('lt',10)); | (id > 1) AND (id | |
or | $map['id'] = array(array('gt',3),array('lt',10), 'or'); | (id > 3) OR (id | |
xor (排他的論理和) | xor | 2 つの入力のうち 1 つだけが true の場合、結果は true になり、それ以外の場合は false になります。例は省略されています。 | 1 xor 1 = 0 |
exp | 包括的な式 | $map['id'] = array(' exp ','in(1,3,8)'); | $map['id'] = array('in','1,3,8'); |
補足説明
##SQL と同様、ThinkPHP 演算子は大文字と小文字を区別しません。また、eq は EQ と同じです。 between 条件と in 条件は文字列または配列をサポートします。つまり、次の 2 つの記述方法は同等です:$map['id'] = array('not in','1,5,8'); $map['id'] = array('not in',array('1','5','8'));
exp 式上の表の Formula
exp は演算子ではなく、より複雑な条件設定をサポートするための包括的な式です。 exp の操作条件は文字列として扱われず、関数やフィールド名の使用を含め、SQL でサポートされている任意の構文を使用できます。 exp は、where 条件だけでなく、次のようなデータ更新にも使用されます。$Dao = M("Article"); // 构建 save 的数据数组,文章点击数+1 $data['aid'] = 10; $data['counter'] = array('exp','counter+1'); // 根据条件保存修改的数据 $User->save($data);
Thinkphp5.0 はモジュールとディレクトリを自動的に生成します。
#
以上がthinkPHP でクエリ式を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。