是否可以将 num_rows 与 fetch_assoc() 组合成单个execute_query?

问题描述 投票:0回答:1

我正在使用 PHP 8.2 中新的 mysqli::execute_query 并希望获取客户下的总订单以及订单数组。

简化代码:

$MySQLi = = new mysqli( "host", "username", "password", "database" );

$orderquery = "select * from orders WHERE userid = ? ";

$ordercount = $MySQLi -> execute_query($orderquery , [$userid]) -> num_rows  ;
$orderdata = $MySQLi -> execute_query($orderquery , [$userid]) -> fetch_all(MYSQLI_ASSOC) ;

可以只用一个execute_query来完成吗?

php mysqli
1个回答
0
投票

感谢 Progman 和 Your Common Sense,都是非常有用的评论。

我最终采用的答案是:

$orderquery = "select * from orders WHERE userid= ? ORDER BY orderid DESC  ";
$orderdata = $MySQLi -> execute_query($orderquery , [$userid]) -> fetch_all(MYSQLI_ASSOC) ;
$ordercount = count($orderdata)  ;

我相信这是最简单的方法。

© www.soinside.com 2019 - 2024. All rights reserved.