我有一个问题,想了解在本示例中的 while 循环中使用 *array_shift* 和 fetchAll 是如何工作的?预期的结果只是从数据库中获取数据并将其用于填写 CRUD 应用程序。
我了解 *array_shift* 会丢弃数组的第一个结果,但不确定为什么这不会影响本示例中返回的结果。只是想了解一下这个过程。
$pdo = Database::connect();
$sql = $pdo->prepare("SELECT * FROM contacts ORDER BY name ASC");
$sql->execute();
$result = $sql->fetchAll(PDO::FETCH_ASSOC);
$contacts = array();
while ($obj = array_shift($result)) {
$contacts[] = $obj;
}
return $contacts;