PluginProbe
TablePress – Tables in WordPress made easy / 3.4
TablePress – Tables in WordPress made easy v3.4
3.4 3.3.4 3.3.3 3.3.2 3.3.1 trunk 1.12 1.14 1.9.2 2.0.4 2.1.7 2.1.8 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.3 2.3.1 2.3.2 2.4 2.4.1 2.4.2 2.4.3 All 45 releases
tablepress / libraries / vendor / PhpSpreadsheet / Calculation / Database / DCount.php

DCount.php in TablePress – Tables in WordPress made easy 3.4, at libraries/vendor/PhpSpreadsheet/Calculation/Database/DCount.php

47 lines 2.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace TablePress\PhpOffice\PhpSpreadsheet\Calculation\Database;
4
5 use TablePress\PhpOffice\PhpSpreadsheet\Calculation\Information\ExcelError;
6 use TablePress\PhpOffice\PhpSpreadsheet\Calculation\Statistical\Counts;
7
8 class DCount extends DatabaseAbstract
9 {
10 /**
11 * DCOUNT.
12 *
13 * Counts the cells that contain numbers in a column of a list or database that match conditions
14 * that you specify.
15 *
16 * Excel Function:
17 * DCOUNT(database,[field],criteria)
18 *
19 * @param mixed[] $database The range of cells that makes up the list or database.
20 * A database is a list of related data in which rows of related
21 * information are records, and columns of data are fields. The
22 * first row of the list contains labels for each column.
23 * @param null|array<mixed>|int|string $field Indicates which column is used in the function. Enter the
24 * column label enclosed between double quotation marks, such as
25 * "Age" or "Yield," or a number (without quotation marks) that
26 * represents the position of the column within the list: 1 for
27 * the first column, 2 for the second column, and so on.
28 * @param mixed[][] $criteria The range of cells that contains the conditions you specify.
29 * You can use any range for the criteria argument, as long as it
30 * includes at least one column label and at least one cell below
31 * the column label in which you specify a condition for the
32 * column.
33 * @return string|int
34 */
35 public static function evaluate(array $database, $field, array $criteria, bool $returnError = true)
36 {
37 $field = self::fieldExtract($database, $field);
38 if ($returnError && $field === null) {
39 return ExcelError::VALUE();
40 }
41
42 return Counts::COUNT(
43 self::getFilteredColumn($database, $field, $criteria)
44 );
45 }
46 }
47