Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 524d159

Browse files
Merge 4.1 into 4.2 (#2869)
2 parents 24f6283 + 00d3931 commit 524d159

File tree

3 files changed

+100
-0
lines changed

3 files changed

+100
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace App\Http\Controllers;
6+
7+
use App\Models\Movie;
8+
use MongoDB\Laravel\Tests\TestCase;
9+
10+
class CountTest extends TestCase
11+
{
12+
/**
13+
* @runInSeparateProcess
14+
* @preserveGlobalState disabled
15+
*/
16+
public function testCount(): void
17+
{
18+
require_once __DIR__ . '/Movie.php';
19+
20+
Movie::truncate();
21+
Movie::insert([
22+
[
23+
'title' => 'Young Mr. Lincoln',
24+
'genres' => ['Biography', 'Drama'],
25+
],
26+
[
27+
'title' => 'Million Dollar Mermaid',
28+
'genres' => ['Biography', 'Drama', 'Musical'],
29+
],
30+
]);
31+
32+
// begin-count
33+
$count = Movie::where('genres', 'Biography')
34+
->count();
35+
36+
echo 'Number of documents: ' . $count;
37+
// end-count
38+
39+
$this->assertEquals(2, $count);
40+
$this->expectOutputString('Number of documents: 2');
41+
}
42+
}

‎docs/usage-examples.txt‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,3 +75,4 @@ calls the controller function and returns the result to a web interface.
7575
/usage-examples/updateOne
7676
/usage-examples/deleteOne
7777
/usage-examples/deleteMany
78+
/usage-examples/count

‎docs/usage-examples/count.txt‎

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
.. _laravel-count-usage:
2+
3+
===============
4+
Count Documents
5+
===============
6+
7+
.. facet::
8+
:name: genre
9+
:values: reference
10+
11+
.. meta::
12+
:keywords: total, code example
13+
14+
.. contents:: On this page
15+
:local:
16+
:backlinks: none
17+
:depth: 1
18+
:class: singlecol
19+
20+
You can count the number of documents returned by a query by calling the ``where()`` and
21+
``count()`` methods on a collection of models or a query builder.
22+
23+
To return the number of documents that match a filter, pass the query filter to the ``where()``
24+
method and call the ``count()`` method.
25+
26+
Example
27+
-------
28+
29+
This usage example performs the following actions:
30+
31+
- Uses the ``Movie`` Eloquent model to represent the ``movies`` collection in the
32+
``sample_mflix`` database
33+
- Counts the documents from the ``movies`` collection that match a query filter
34+
- Prints the matching document count
35+
36+
The example calls the following methods on the ``Movie`` model:
37+
38+
- ``where()``: Matches documents in which the value of the ``genres`` field includes ``"Biography"``.
39+
- ``count()``: Counts the number of matching documents. This method returns an integer value.
40+
41+
.. io-code-block::
42+
43+
.. input:: ../includes/usage-examples/CountTest.php
44+
:start-after: begin-count
45+
:end-before: end-count
46+
:language: php
47+
:dedent:
48+
49+
.. output::
50+
:language: console
51+
:visible: false
52+
53+
Matching documents: 1267
54+
55+
56+
To learn how to edit your Laravel application to run the usage example, see the
57+
:ref:`Usage Examples landing page <laravel-usage-examples>`.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /