ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp で where メソッドを使用する方法

thinkphp で where メソッドを使用する方法

WBOY
WBOYオリジナル
2022-04-18 17:15:553540ブラウズ

thinkphp では、where メソッドはデータベース操作の結果をフィルタリングするために使用されます。これは、モデル クラスのコヒーレント操作メソッドの 1 つです。通常のクエリ、式クエリ、クイック クエリ、間隔クエリ、クエリ操作の場合、構文は「instantiate object->where('condition');」です。

thinkphp で where メソッドを使用する方法

この記事の動作環境: Windows 10 システム、ThinkPHP バージョン 6、Dell G3 コンピューター。

thinkphp で where メソッドを使用する方法

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 サイトの他の関連記事を参照してください。

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