laravelコレクションにはwhereメソッドがありますか?

DDD
リリース: 2023-08-10 14:14:55
オリジナル
738 人が閲覧しました

######持っている。 Laravel コレクションの where メソッドは、コレクション内の要素をフィルタリングし、指定された条件に基づいて一致する要素を返すための非常に便利なメソッドです。 where メソッドを使用すると、さまざまな条件に基づいてコレクション内の要素をフィルタリングできます。where メソッドはパラメータとしてクロージャを受け取ります。フィルタ条件はクロージャ内で定義できます。クロージャの各要素はクロージャに渡されます。連想配列であってもオブジェクトのコレクションであっても、where メソッドは優れたフィルタリングの役割を果たし、データ処理をより便利かつ柔軟にします。

laravelコレクションにはwhereメソッドがありますか?この記事の動作環境: Windows 10 システム、Laravel9.x バージョン、Dell G3 コンピューター。

Laravel コレクションには where メソッドがあります。 where メソッドは、コレクション内の要素をフィルターし、指定された条件に基づいて一致する要素を返すために使用されます。

Laravel では、コレクションはオブジェクトの配列またはコレクションに対してさまざまな操作を実行するために使用される便利なデータ型です。コレクション クラスは、collect 関数を呼び出して作成することも、クエリ ビルダーまたは Eloquent クエリを通じて生成することもできます。

where メソッドを使用すると、さまざまな条件に基づいてコレクション内の要素をフィルターできます。 where メソッドはパラメータとしてクロージャを受け入れ、フィルタリング条件をクロージャ内で定義できます。クロージャの各要素はクロージャに渡され、クロージャ内の条件に基づいてフィルタリングされます。

次の例は、where メソッドを使用してコレクションをフィルター処理する方法を示しています。

$collection = collect([
    ['name' => 'John', 'age' => 20],
    ['name' => 'Jane', 'age' => 25],
    ['name' => 'David', 'age' => 30],
    ['name' => 'Sarah', 'age' => 35],
]);
$filteredCollection = $collection->where('age', '>', 25);
$filteredCollection->each(function ($item, $key) {
    echo $item['name'].', Age: '.$item['age']."\n";
});
ログイン後にコピー

上の例では、最初に複数の連想配列を含むコレクションを作成します。次に、where メソッドを使用して、年齢が 25 を超える要素を除外します。最後に、 each メソッドを使用してフィルター処理されたコレクションを反復処理し、各要素の名前と経過時間を出力します。

上記のコードを実行すると、次の出力が得られます。

David, Age: 30
Sarah, Age: 35
ログイン後にコピー

出力からわかるように、where メソッドは、経過時間 25 を超える要素を正常にフィルターで除外します。

単純な比較演算子の使用に加えて、where メソッドは、正規表現の使用、カスタム関数の使用など、他のより複雑な条件もサポートします。

概要

Laravel コレクションの where メソッドは、指定された条件に基づいてコレクション内の要素をフィルターできる非常に便利なメソッドです。連想配列であってもオブジェクトのコレクションであっても、where メソッドは優れたフィルタリングの役割を果たし、データ処理をより便利かつ柔軟にします。

以上がlaravelコレクションにはwhereメソッドがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート