PDOStatement::bindColumn — 열을 PHP 변수에 바인딩합니다(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0).
bool PDOStatement::bindColumn ( 혼합 $column , 혼합 &$param [, int $type [, int $maxlen [, 혼합 $driverdata ]]] )
쿼리 결과 집합의 특정 열에 특정 변수가 바인딩되도록 배열합니다. PDOStatement::fetch() 또는 PDOStatement::fetchAll()을 호출할 때마다 열에 바인딩된 모든 변수가 업데이트됩니다.
참고: 열에 대한 PDO 정보는 명령문 실행 전에 항상 사용할 수 있는 것은 아닙니다. 휴대용 애플리케이션은 PDOStatement::execute() 후에 이 함수(메소드)를 호출해야 합니다. 그러나 PgSQL 드라이버를 사용할 때 LOB 열을 스트림으로 바인딩하려면 애플리케이션이 PDOStatement::execute()를 호출하기 전에 이 메서드를 호출해야 합니다. 그렇지 않으면 대형 객체 OID가 정수로 반환됩니다.
열 결과 집합의 열 번호(1부터 시작하여 인덱싱됨) 또는 열 이름입니다. 열 이름을 사용하는 경우 이름은 드라이버가 반환한 열 이름의 대소문자와 일치해야 합니다.
param 열에 바인딩될 PHP 변수 이름입니다.
typePDO ::PARAM_* 상수로 지정된 매개변수의 데이터 유형입니다.
maxlen 사전 할당 힌트.
DriverData 드라이버의 선택적 매개변수입니다.
성공하면 TRUE를, 실패하면 FALSE를 반환합니다.
결과 세트의 열을 PHP 변수에 바인딩하는 것은 각 행에 포함된 데이터를 애플리케이션에서 즉시 사용할 수 있게 만드는 효율적인 방법입니다. 다음 예는 PDO가 다양한 옵션과 기본값을 사용하여 열을 바인딩하고 검색하는 방법을 보여줍니다.
<?phpfunction readData($dbh) { $sql = '과일에서 이름, 색상, 칼로리 선택'; try { $stmt = $dbh->prepare($sql); $stmt->execute(); 숫자 바인딩*/ $stmt->bindColumn(1, $name); $stmt->bindColumn(2, $colour); 열 이름으로 바인딩*/ $stmt->bindColumn('calcium', $cals); while ($row = $stmt->fetch(PDO::FETCH_BOUND)) { $data = $name $. color . "t" . $cals . "n"; 인쇄 $data } } catch (PDOException $e); }}읽기데이터($dbh);?>
위 루틴은 다음을 출력합니다:
애플 레드 150바나나 옐로우 175키위 그린 75오렌지 오렌지 150망고 레드 200스트로베리 레드 25