ホームページ >バックエンド開発 >PHPチュートリアル >ThinkPHPのwhereメソッドの詳細説明

ThinkPHPのwhereメソッドの詳細説明

WBOY
WBOYオリジナル
2016-06-23 13:07:181113ブラウズ

カテゴリ: PHP 時間: 2016 年 4 月 22 日

ThinkPHP フレームワークでは、where メソッドの使用はクエリ言語の本質であり、ThinkPHP の一貫した操作の重要な部分です。 where メソッドのパラメーターは文字列、配列、オブジェクトをサポートしており、非常に強力であり、公式に推奨されています。 where メソッドは、通常のクエリ、式クエリ、クイック クエリ、間隔クエリ、結合クエリなどのクエリ操作を完了できます。以下では、PHP プログラマーの Lei Xuesong が where メソッドの使用法を詳しく説明します。

1. 文字列クエリ

M("User")->where('status=0')->select();//查询status为0的记录

2. 配列クエリ

a. 通常のクエリ

$where['status'] = 0;//字段就是数组的下标,值就是对应的条件 M("User")->where(array('status'=>'0'))->select();//查询status为0的记录

注: 配列の添字はデータベース フィールドである必要があります。それ以外の場合はフィルターされます。

b、式クエリ

意味
EQ 等しい(=)
NEQ 等しくない(a8093152e673feb7aba1828c43532094 )
GT 素晴らしいより大きい (>)
EGT 以上 (>=)
LT 以下 (<)
ELT 以下(
LIKE ファジークエリ
[NOT] BETWEEN (not) 間隔クエリ
[NOT] IN (not) IN クエリ
EXP 式クエリ、SQL 文法をサポートします
$where['status'] = array("eq",0);//字段就是数组的下标,值就是对应的条件 M("User")->where($where)->select();//查询status为0的记录

3. Where メソッド配列クエリの例

1. 配列を使用して同じフィールドに複数の条件を実装する方法たとえば、作成日が 2016 年 4 月 20 日以上、2016 年 4 月 23 日以下であるレコードをクエリします。

$where['createdate'] = array(array('EGT',"2016-04-20"),array('ELT',"2016-04-23"));//使用一个二维数组就可以解决同一字段多个条件 M("User")->where($where)->select();//查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录

2. 配列クエリに OR クエリを使用しますか?たとえば、ステータスが 0 または 1 に等しいレコードをクエリします。

$where['status'] = array(array('EQ',"0"),array('EQ',"1"),"OR");//使用一个二维数组就可以解决同一字段多个条件 M("User")->where($where)->select();//查询status等于0或者1的记录

3. 複数の条件で AND と OR の両方を使用する配列クエリ?たとえば、作成日が 2016 年 4 月 20 日以下で、ステータスが 1 またはレベルが 0 のレコードをクエリします。

りー

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。