이 문제는 간단한 수정이어야하며이 오류가 나타나는 이유를 부분적으로 이해하고 있지만이를 수정하는 방법을 알지 못합니다. 나는 문서를 살펴 봤지만 버퍼링 된 쿼리 옵션을 사용하는 것 이외의 해결책을 찾을 수 없습니다. 나는 그것을 시도했지만 효과가 없습니다.PDO 버퍼되지 않은 다른 쿼리가 활성화되어있는 동안 쿼리를 실행할 수 없습니다.
오류 : 다른 버퍼링 쿼리가 오류가 나는 $ 결과 배열을 구축하고있는 라인에서 오는
를 활성화하는 동안 PDO 쿼리를 실행할 수 없습니다.
foreach($phones as $phone)
{
$stmt = db::getInstance()->prepare("CALL phones(:phone)");
$stmt->bindParam(':phone', $phone, PDO::PARAM_INT, 10);
$stmt->execute();
$result[] = db::getInstance()->query("SELECT @phone;")->fetchAll(PDO::FETCH_ASSOC);
}
OUT 매개 변수를 사용하지 않는 이유가 있습니까? – VolkerK
예, 출력 매개 변수는 단일 행을 출력하기위한 것이기 때문에 가능합니다. 제 경우에는 여러 행이 필요합니다. – Jim
프로 시저에서 결과 세트를 "리턴"할 수 있습니다. – VolkerK