0

つまり、テーブルがあり、objects いくつかのテストデータがあります。

id ネーム タイプ ブランド 型式 備考

1 abc ラップトップ デル 2019 テキスト
2 デフ ラップトップ デル 2019 テキスト
3 efg ラップトップ デル 2018 テキスト
4 xyz ラップトップ asus 2019 テキスト

すべてのラップトップが必要なため、次のような配列がありますwhere brand = dell AND model = 2019

$search_arr = array(["brand" => "dell"], ["model" => "2019"]);

私のクエリでは、

Objects::where(
    ["type", "laptop"],
    $search_arr
)->get();

しかし、すべての行を取得します (id => 1、2、3)。どうやってやるの?

ブランドまたはモデルを個別に検索する別の機能があります。

そのために、配列を準備します。
$search_arr = [["brand" => "dell"]];
$search_arr = [["model" => "2019"]];

できます!!!

編集し た私はこれに一日中費やしました。やっと、ここまできました。

できる限り、配列の構文スタイルを変更したくありません。必要に応じて、クエリ構文のみを変更したい。

4

1 に答える 1

2

typeあなたの検索にあなたを追加することができます

$search_arr = [
  "brand" => "dell",
  "model" => "2019",
  "type" => 'laptop'
];
Objects::where($search_arr)->get();

またはあなたが言うことができます

Objects::where('brand', '=', 'dell')
  ->where('model', '=', '2019')
  ->where('type', '=', 'laptop')
  ->get();

そしてそれはそれだろう

于 2019-11-21T15:42:07.977 に答える