처음부터 PDO 가져오기 결과 반복
PHP의 PDO 확장에서는 가져온 배열을 여러 번 반복하려고 시도할 때 문제가 발생할 수 있습니다. , 매번 첫 번째 행부터 시작합니다. MySQL의 mysql_data_seek 방법과 달리 PDO에는 배열 포인터를 수동으로 재설정하는 것과 직접적으로 동등한 기능이 없습니다.
이를 극복하려면 결과를 배열에 저장하여 대체 접근 방식을 활용할 수 있습니다. 다음은 이를 보여주는 수정된 코드 조각입니다.
<code class="php"><?php $pdo = new PDO('mysql:host=' . $host . ';dbname='.$database, $username, $password); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $pdo->prepare('SELECT * FROM mytable WHERE active = 1 ORDER BY name ASC'); $stmt->setFetchMode(PDO::FETCH_ASSOC); $stmt->execute(); // Store the results in an array $rows = $stmt->fetchAll(); // First iteration foreach ($rows as $r) { // Perform desired actions starting from the first row } // Second iteration foreach ($rows as $r) { // Perform additional actions starting from the first row again } ?></code>
결과를 $rows에 저장하면 전체 결과 집합의 스냅샷을 효과적으로 생성할 수 있습니다. 이를 통해 배열을 여러 번 반복하여 각 반복이 첫 번째 행에서 시작되도록 할 수 있습니다. 이 접근 방식은 더 큰 다양성을 제공하고 수동 포인터 조작이 필요하지 않으므로 다양한 사용 사례에 적합합니다.
위 내용은 처음부터 PDO 가져오기 결과를 여러 번 반복하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!