ホームページ  >  記事  >  PHPフレームワーク  >  laravelの使い方や場所は? (コード例付き)

laravelの使い方や場所は? (コード例付き)

藏色散人
藏色散人転載
2022-01-04 14:42:055017ブラウズ

Laravel の次のチュートリアル コラムでは、laravel orWhere の使い方について説明します。

laravel フレームワークにおける where 条件クエリは非常にシンプルなのでここでは書きませんが、ここでは主にあまり使われない orWhere の複数条件やクエリ文の結合部分を記録します。

(1) SQL ステートメント:

select `id` from `user` where (`email` = 'admin@phpernote.com' and `password` = '123456') or (`mobile` = '13681127231' and `password` = '123456');

laravel モデル ステートメント:

User::select(['id'])
    ->where(function ($query) use ($userName, $password) {
        $query->where('password', '=', '123456')->where('email', '=', 'admin@phpernote.com');
    })
    ->orWhere(function ($query) use ($userName, $password) {
        $query->where('password', '=', '123456')->where('mobile', '=', '13681127231');
    })
    ->first();

(2) SQL ステートメント:

select count(*) from `user` where `type` = 1 and `valid_type` = 2 and (`valid_end` < 1560738570 or `valid_begin` > 1560738570);

laravel モデル ステートメント:

$model = User::where(&#39;type&#39;, 1)->where(&#39;valid_type&#39;, &#39;=&#39;, 2)->where(function ($query) {
    $query->where(&#39;valid_end&#39;, &#39;<&#39;, 1560738570)->orWhere(function ($query) {
        $query->where(&#39;valid_begin&#39;, &#39;>&#39;, 1560738570);
    });
})->first();

(3) SQL ステートメント:

select count(*) from `user` where `valid_type` = 2 or (`valid_type` = 3 and (`valid_end` < 1560738570 or `valid_begin` > 1560738570));

laravel model ステートメント:

$model = User::where(function ($query) {
    $query->where(&#39;valid_type&#39;, 2);
})->orWhere(function ($query) {
    $query->where(&#39;valid_type&#39;, &#39;=&#39;, 3)->where(function ($query) {
        $query->where(&#39;valid_end&#39;, &#39;<&#39;, 1560738570)->orWhere(function ($query) {
            $query->where(&#39;valid_begin&#39;, &#39;>&#39;, 1560738570);
        });
    });
})->first();

関連する推奨事項:

最新の 5 つの Laravel ビデオ チュートリアル

以上がlaravelの使い方や場所は? (コード例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はphpernote.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。