我正在尝试显示从我的mongo 3.4数据库返回的记录总数。对于这个特定的查询,结果应该是380,但它显示14489.我确信这是一个简单的我缺少/忘记PHP
这是代码:(包括一些关于我正在处理的变量类型的调试语句)
$numrecords = count($records);
echo"<BR><font color=red>".gettype($records)."</font>";
echo"<BR><font color=red>".sizeof($records)."</font>";
if ( $numrecords > 0 ) {
echo "<tr><td colspan='5'><h3>Record Count: ".$numrecords ."</h3></td></tr>";
echo "<tr><th>PH Number</th><th>Department</th></tr>";
foreach ( $records as $rec ) {
if (!empty($rec->department)) {
echo "<tr>";
echo "<td>". $rec->phnum . "</td>";
echo "<td>". $rec->department . "</td>";
echo "</tr>";
}
} //end for
} else {
echo "<tr><td colspan='5'>No matching data</td></tr>";
}
它表示对象类型是'array'。我一直在玩count()和sizeof()
任何提示将不胜感激。
答案 0 :(得分:-1)
因此它显示了表中正确的行数,但计数显示的数量多于显示的表中的数量?
尝试在查询后使用msqli_num_rows
下面是一个示例,由于您没有提供查询代码,因此您必须根据需要进行更改
$sql = "SELECT * FROM table_name WHERE datarow='$datarow'";
$result = mysqli_query($conn, $sql);
//this is where you count the number of rows returned from this query.
$count = mysqli_num_rows($result);
如果这不起作用,则表示您的查询无法满足您所需的规格。