Làm cách nào tôi có thể nhận được tổng số hàng trong PHP?

❮ Tham chiếu PHP MySQLi

Thí dụ

Trả về số hàng trong tập kết quả

$con=mysqli_connect["localhost","my_user","my_password","my_db"];
// Kiểm tra kết nối
if . ". mysqli_connect_error[];
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error[];
  }

$sql="CHỌN Họ, Tuổi TỪ Người ĐẶT HÀNG THEO Họ";

if [$result=mysqli_query[$con,$sql]]
  {
  // ​​Trả về số lượng hàng trong tập kết quả
  $rowcount=mysqli_num_rows[$result];
  printf["Result set has %d rows.\n",$rowcount];
  // ​​Tập hợp kết quả miễn phí
  mysqli_free_result[$result];
  }

mysqli_close[$con];
?>

Định nghĩa và cách sử dụng

Hàm mysqli_num_rows[] trả về số hàng trong tập kết quả

cú pháp

Giá trị tham số

Tham sốMô tảKết quảBắt buộc. Chỉ định một mã định danh tập kết quả được trả về bởi mysqli_query[], mysqli_store_result[] hoặc mysqli_use_result[]

chi tiết kỹ thuật

Giá trị trả về. Trả về số hàng trong tập kết quả Phiên bản PHP. 5+❮ Tham chiếu PHP MySQLi

Đếm số hàng bằng hai phương pháp. Bạn có thể sử dụng hàm đếm []. Hàm count[] dùng để đếm các phần tử của mảng. Truy vấn chọn [chọn bảng dB] của MySQL cũng được sử dụng để đếm các hàng của bảng. Đây là một phương pháp đơn giản để tìm ra và lặp lại giá trị đếm hàng

Để đếm tổng số hàng bằng hàm đếm [] của PHP, bạn phải tạo cơ sở dữ liệu MySQL. Giả sử chúng ta đã tạo một bảng "người dùng" và muốn đếm xem có bao nhiêu người dùng được chèn vào bảng

Bảng cơ sở dữ liệu MYSQL = "người dùng"


CREATE TABLE `users` [
  `id` int[50] NOT NULL,
  `uname` varchar[40] NOT NULL,
  `upassword` varchar[40] NOT NULL
] ENGINE=InnoDB DEFAULT CHARSET=latin1;

Trong bảng trên, chúng ta sẽ đếm các hàng của bảng này bằng cách sử dụng hàm PHP count[] và truy vấn chọn mysql. Bây giờ chèn dữ liệu vào bảng


INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];

Trong dữ liệu trên mà chúng tôi đã chèn vào bảng người dùng, có 5 hàng và Khi chúng tôi đếm các hàng, kết quả sẽ là 5.
Bây giờ hãy tạo tập lệnh PHP.

Đếm số hàng của bảng


$row[0]";
mysqli_close[$mysqli];
?>

Trong tập lệnh PHP ở trên, chúng tôi đã sử dụng hàm đếm []. Chúng ta đã sử dụng hàm = count[1], chúng ta cũng có thể sử dụng hàm đếm[*] thay thế cho đếm[1] bởi vì. COUNT[*] đếm số hàng. Vì cả 0 và 1 đều là các giá trị khác null, COUNT[0]=COUNT[1] và cả hai sẽ tương đương với số hàng COUNT[*]. Đó là một khái niệm khác nhau, nhưng kết quả tạo ra sẽ giống nhau. Truy vấn chọn MySQL cũng được sử dụng trong tập lệnh đếm hàng PHP. Chúng tôi đã xác định bảng có tên "người dùng" trong truy vấn chọn MySQL. Điều này sẽ giúp chọn bảng. Chúng tôi đã sử dụng hàm mysqli_fetch_array để tìm nạp một hàng kết quả dưới dạng một mảng kết hợp, một mảng số hoặc cả hai

Chúng tôi sẽ giới thiệu một phương pháp để đếm tất cả các hàng từ một bảng trong MySQL trong PHP bằng cách sử dụng các phương thức

MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 và
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
1. Hàm
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 được cung cấp bởi PDO[PHP Data Objects] và phương thức
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
1 là một hàm SQL. PDO là một cách hướng đối tượng để kết nối cơ sở dữ liệu và phụ trợ. Phương pháp này linh hoạt vì PDO tương thích với 12 hệ thống cơ sở dữ liệu khác nhau

Chúng tôi sẽ trình bày một phương pháp khác để đếm tất cả các hàng từ một bảng bằng cách sử dụng hàm

$testObj = new Test[];
$testObj->getRowsNumber[]
1. Phương pháp này sử dụng cách hướng đối tượng để thiết lập kết nối cơ sở dữ liệu với máy chủ bằng hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
2. Tuy nhiên, phần còn lại của quá trình được thực hiện theo thủ tục

Chúng tôi sẽ trình bày cách đếm tất cả các hàng từ một bảng bằng cách sử dụng thuộc tính

$testObj = new Test[];
$testObj->getRowsNumber[]
3 của PHP. Phương pháp này tuân theo thực hành hướng đối tượng hoàn chỉnh để kết nối cơ sở dữ liệu và đếm tổng số hàng. Việc sử dụng câu lệnh
$testObj = new Test[];
$testObj->getRowsNumber[]
4 trong phương pháp này giúp nó an toàn trước lỗ hổng của SQL injection

Sử dụng Phương pháp PDO của
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 để đếm Tổng số hàng trong Bảng MySQL

PDO là một trong những cách hướng đối tượng để kết nối cơ sở dữ liệu với máy chủ PHP. Chúng ta có thể sử dụng phương thức

MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 có sẵn trong PDO để đếm các hàng của bảng. Đầu tiên, chúng tôi tạo một cơ sở dữ liệu và điền dữ liệu vào bảng. Sau đó, chúng tôi thiết lập kết nối cơ sở dữ liệu bằng cách sử dụng đúng máy chủ, tên người dùng cơ sở dữ liệu, mật khẩu cơ sở dữ liệu và tên cơ sở dữ liệu. Chúng tôi sử dụng một thể hiện của đối tượng PDO để lưu trữ kết nối. Khi chúng tôi đảm bảo kết nối cơ sở dữ liệu đang hoạt động, chúng tôi truy vấn câu lệnh SQL bằng cách sử dụng hàm
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
1 và thực thi nó. Hàm
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
1 lấy
$testObj = new Test[];
$testObj->getRowsNumber[]
9 làm tham số đếm tất cả các hàng trong bảng đã chỉ định. Sau đó, chúng tôi sử dụng phương pháp
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 để hiển thị số lượng hàng trong bảng

Các hướng dẫn bên dưới giả định rằng kết nối cơ sở dữ liệu với máy chủ được thiết lập. Có hai hàng trong bảng trong cơ sở dữ liệu

________số 8

Ví dụ, trong

# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
1, hãy viết một lớp tên là
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
2 kế thừa lớp
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
3. Viết một hàm công khai
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
4 bên trong lớp. Gán một biến
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
5 và viết truy vấn bằng cách sử dụng câu lệnh
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
6 để chọn mọi thứ từ bảng
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
7. Sử dụng
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
8 trong câu lệnh
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
6 để đếm số hàng. Sử dụng hàm

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
80 để nhận kết nối từ

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
81 và truy vấn lệnh SQL được viết ở trên bằng hàm

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
82. Gán những nhiệm vụ này cho một biến

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
83. Sử dụng biến

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
83 để gọi phương thức
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
0 và hiển thị kết quả

Trong ví dụ bên dưới, lớp cha

# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
3 chứa phương thức ________ 187 chứa kết nối cơ sở dữ liệu. Hàm ________ 94 được gọi từ một tệp php khác dưới dạng

$testObj = new Test[];
$testObj->getRowsNumber[]

Mã ví dụ

# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}

đầu ra


INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
8

Sử dụng phương pháp thủ tục để đếm số lượng hàng trong bảng MySQL bằng hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
1

Chúng ta có thể sử dụng hàm

$testObj = new Test[];
$testObj->getRowsNumber[]
1 trong PHP để đếm số hàng trong bảng MySQL. Chúng ta có thể tạo một đối tượng của hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
2 để kết nối cơ sở dữ liệu với máy chủ PHP. Hàm lấy tên máy chủ, tên người dùng, mật khẩu và tên cơ sở dữ liệu làm tham số. Chúng tôi viết câu lệnh SQL để chọn mọi hàng từ bảng. Chúng ta sử dụng hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
22 để sử dụng kết nối cơ sở dữ liệu và thực hiện truy vấn. Sau đó, chúng ta sử dụng hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
23 để đếm số hàng và hiển thị nó

Ví dụ bên dưới sử dụng cùng một cơ sở dữ liệu, cùng một bảng và cùng một dữ liệu trong bảng như trong phương thức đầu tiên

Ví dụ: gán tên máy chủ, tên người dùng, mật khẩu và tên cơ sở dữ liệu cho các biến lần lượt là

$testObj = new Test[];
$testObj->getRowsNumber[]
24,
$testObj = new Test[];
$testObj->getRowsNumber[]
25,
$testObj = new Test[];
$testObj->getRowsNumber[]
26 và
$testObj = new Test[];
$testObj->getRowsNumber[]
27. Tạo một đối tượng của hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
2 bằng từ khóa
$testObj = new Test[];
$testObj->getRowsNumber[]
29 và chuyển các biến làm tham số của hàm. Gán giá trị của đối tượng trong biến
$testObj = new Test[];
$testObj->getRowsNumber[]
00. Viết truy vấn SQL để chọn mọi thứ từ bảng
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
7 trong biến
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
5. Sử dụng một biến
$testObj = new Test[];
$testObj->getRowsNumber[]
03 để lưu trữ hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
22 nhận các biến
$testObj = new Test[];
$testObj->getRowsNumber[]
00 và
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
5. Kiểm tra giá trị boolean của biến
$testObj = new Test[];
$testObj->getRowsNumber[]
03 bằng điều kiện
$testObj = new Test[];
$testObj->getRowsNumber[]
08. Bên trong điều kiện
$testObj = new Test[];
$testObj->getRowsNumber[]
08, sử dụng
$testObj = new Test[];
$testObj->getRowsNumber[]
1 với biến
$testObj = new Test[];
$testObj->getRowsNumber[]
11 làm tham số và gán nó cho biến
$testObj = new Test[];
$testObj->getRowsNumber[]
12. In biến
$testObj = new Test[];
$testObj->getRowsNumber[]
12

Mã ví dụ

$testObj = new Test[];
$testObj->getRowsNumber[]
2

đầu ra

$testObj = new Test[];
$testObj->getRowsNumber[]
0

Sử dụng một cách hướng đối tượng để đếm số hàng trong một bảng bằng cách sử dụng thuộc tính
$testObj = new Test[];
$testObj->getRowsNumber[]
3

Chúng ta có thể sử dụng thuộc tính

$testObj = new Test[];
$testObj->getRowsNumber[]
3 trong PHP để đếm số hàng trong bảng MySQL. Cách tiếp cận này sử dụng phương pháp hướng đối tượng. Phương pháp này khá giống với phương pháp thứ hai trong việc tạo kết nối cơ sở dữ liệu và viết truy vấn SQL. Việc sử dụng các câu lệnh đã chuẩn bị khác với phương pháp thứ hai. Chúng ta sử dụng hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
16 để tạo câu lệnh đã chuẩn bị, hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
17 để thực thi câu lệnh đã chuẩn bị và hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
18 để lưu kết quả

Ví dụ: gán tên máy chủ, tên người dùng, mật khẩu và tên cơ sở dữ liệu cho các biến lần lượt là

$testObj = new Test[];
$testObj->getRowsNumber[]
24,
$testObj = new Test[];
$testObj->getRowsNumber[]
25,
$testObj = new Test[];
$testObj->getRowsNumber[]
26 và
$testObj = new Test[];
$testObj->getRowsNumber[]
27. Tạo một đối tượng của hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
2 bằng từ khóa
$testObj = new Test[];
$testObj->getRowsNumber[]
29 và chuyển các biến làm tham số của hàm. Gán giá trị của đối tượng trong biến
$testObj = new Test[];
$testObj->getRowsNumber[]
00. Viết truy vấn SQL để chọn mọi thứ từ bảng
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
7 trong biến
# php 7.*
connect[]->query[$sql];
        $count = $stmt->fetchColumn[];
        print $count;
    }
}
5

Sử dụng một biến


INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
83 để lưu trữ câu lệnh đã chuẩn bị. Sử dụng
$testObj = new Test[];
$testObj->getRowsNumber[]
00 khả dụng để gọi hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
16 lấy biến
MariaDB [oop]> select * from users;
+----+-----------+------------+------------+
| id | firstname | lastname   | dob        |
+----+-----------+------------+------------+
|  1 | Dan    	 |  James     | 1998-08-23 |
|  2 | Dean   	 | Henderson  | 2000-03-30 |
+----+-----------+----------+--------------+
2 rows in set [0.003 sec]
11 làm tham số. Kiểm tra giá trị boolean của biến

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
83 bằng điều kiện
$testObj = new Test[];
$testObj->getRowsNumber[]
08. Bên trong điều kiện
$testObj = new Test[];
$testObj->getRowsNumber[]
08, sử dụng biến

INSERT INTO `users` [`id`, `uname`, `upassword`] VALUES
[1, 'admin', 'admin@123'],
[2, 'admin2', 'admin@123'],
[3, 'admin3', 'admin@1234'],
[4, 'admin4', 'admin@678'],
[5, 'admin5', 'admin@679'];
83 để gọi hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
17 và sau đó là hàm
$testObj = new Test[];
$testObj->getRowsNumber[]
18. Và sau đó, gọi thuộc tính
$testObj = new Test[];
$testObj->getRowsNumber[]
3 và in nó

Làm cách nào để đếm các bản ghi trong PHP?

php $con = mysqli_connect["localhost","root","","test"]; . $ con] { die['Không thể kết nối. '. mysqli_error[]]; . "

Làm cách nào để đếm số hàng trong truy vấn SQL PHP?

Hàm SQL COUNT[] trả về số hàng trong một bảng thỏa mãn tiêu chí được chỉ định trong mệnh đề WHERE . Nó đặt số lượng hàng hoặc giá trị cột không NULL. COUNT[] trả về 0 nếu không có hàng nào phù hợp. Cú pháp trên là cú pháp chuẩn SQL 2003 ANSI chung.

Num_rows trong PHP là gì?

Mô tả ¶ Trả về số hàng trong tập kết quả. Hành vi của mysqli_num_rows[] phụ thuộc vào việc bộ kết quả được đệm hay không được đệm đang được sử dụng. Hàm này trả về 0 cho các tập kết quả không có bộ đệm trừ khi tất cả các hàng đã được tìm nạp từ máy chủ

Làm cách nào để có được tổng số hàng trong MySQL?

Để đếm tất cả các hàng trong một bảng, cho dù chúng có chứa giá trị NULL hay không, hãy sử dụng COUNT[*] . Dạng đó của hàm COUNT[] về cơ bản trả về số hàng trong tập kết quả được trả về bởi câu lệnh SELECT.

Chủ Đề