ホームページ > 記事 > PHPフレームワーク > thinkphp で where メソッドを使用する方法
thinkphp では、where メソッドはデータベース操作の結果をフィルタリングするために使用されます。これは、モデル クラスのコヒーレント操作メソッドの 1 つです。通常のクエリ、式クエリ、クイック クエリ、間隔クエリ、クエリ操作の場合、構文は「instantiate object->where('condition');」です。
この記事の動作環境: Windows 10 システム、ThinkPHP バージョン 6、Dell G3 コンピューター。
where メソッドを使用して、データベース操作の結果をフィルターできます。つまり、SQL クエリ ステートメントの where 句です。
今日は、最も一般的に使用される、しかし最も複雑なクエリの where メソッドについて説明します。where メソッドは、モデル クラスのコヒーレント操作メソッドの 1 つでもあり、主にクエリと設定操作に使用されます。条件。
where メソッドの使用法は、ThinkPHP クエリ言語の本質であり、ThinkPHP ORM の重要な部分およびハイライトであり、通常のクエリ、式クエリ、クイック クエリ、間隔クエリ、および複合クエリを含むクエリを完了できます。クエリを実行します。 where メソッドのパラメータは文字列と配列をサポートしており、オブジェクトも使用できますが、お勧めしません。
文字列条件
文字列条件を使用して直接クエリと操作を行います。次に例を示します。
$User = M("User"); // 实例化User对象 $User->where('type=1 AND status=1')->select();
最終的に生成される SQL ステートメントは
SELECT * FROM think_user WHERE type=1 AND status=1# です。 ##バージョン 3.1 以降を使用している場合、文字列条件を使用する場合は、前処理メカニズムと連携してセキュリティを強化することをお勧めします。例:
$Model->where("id=%d and username='%s' and xx='%f'",array($id,$username,$xx))->select();または使用:
$Model->where("id=%d and username='%s' and xx='%f'",$id,$username,$xx)->select();If $id 変数は、ユーザーが送信する URL アドレスから取得され、入力が数値以外のタイプの場合、クエリの前に強制的に数値形式にフォーマットされます。 文字列前処理形式タイプでは、数値、文字列などの指定がサポートされています。詳細については、vsprintf メソッドのパラメータの説明を参照してください。
配列条件
配列条件の使用法は、ThinkPHP が推奨する使用法です。 通常のクエリ最も単純な配列クエリ方法は次のとおりです:$User = M("User"); // 实例化User对象 $map['name'] = 'thinkphp'; $map['status'] = 1; // 把查询条件传入查询方法 $User->where($map)->select();最終的に生成される SQL ステートメントは
SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1です推奨される学習: "
PHP ビデオ チュートリアル>>
以上がthinkphp で where メソッドを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。