PDOStatement::bindColumn

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)

PDOStatement::bindColumn — PHP 변수에 열 바인딩


설명

public PDOStatement::bindColumn(
    string|int $column,
    mixed &$var,
    int $type = PDO::PARAM_STR,
    int $maxLength = 0,
    mixed $driverOptions = null
): bool
                

PDOStatement::bindColumn()은 쿼리의 결과 집합에서 지정된 열에 바인딩된 특정 변수를 갖도록 정렬합니다. PDOStatement::fetch() 또는 PDOStatement::fetchAll()에 대한 각 호출은 열에 바인딩된 모든 변수를 업데이트합니다.

메모:

열에 대한 정보는 명령문이 실행될 때까지 PDO에서 항상 사용할 수 있는 것은 아니므로 이식 가능한 응용 프로그램은 PDOStatement::execute() 후에 이 함수를 호출해야 합니다.

그러나 PgSQL 드라이버를 사용할 때 LOB 열을 스트림으로 바인딩할 수 있으려면 응용 프로그램에서 PDOStatement::execute()를 호출하기 전에 이 메서드를 호출해야 합니다. 그렇지 않으면 대형 개체 OID가 정수로 반환됩니다.


매개변수

column
열 번호(1-인덱싱됨) 또는 결과 집합의 열 이름입니다. 열 이름을 사용하는 경우 드라이버에서 반환한 대로 이름이 열의 대소문자와 일치해야 합니다.
var
열이 바인딩될 PHP 변수의 이름입니다.
type
매개변수의 데이터 유형으로, PDO::PARAM_* 상수로 지정됩니다.
maxLength
사전 할당에 대한 힌트입니다.
driverOptions
드라이버의 선택적 매개변수입니다.

반환 값

성공하면 true를, 실패하면 false를 반환합니다.


Examples

예제 #1 결과 집합 출력을 PHP 변수에 바인딩

결과 집합의 열을 PHP 변수에 바인딩하는 것은 각 행에 포함된 데이터를 애플리케이션에서 즉시 사용할 수 있도록 하는 효과적인 방법입니다. 다음 예에서는 PDO를 사용하여 다양한 옵션과 지능형 기본값을 사용하여 열을 바인딩하고 검색하는 방법을 보여줍니다.

                  
<?php
$stmt = $dbh->prepare('SELECT name, colour, calories FROM fruit');
$stmt->execute();

/* Bind by column number */
$stmt->bindColumn(1, $name);
$stmt->bindColumn(2, $colour);

/* Bind by column name */
$stmt->bindColumn('calories', $cals);

while ($stmt->fetch(PDO::FETCH_BOUND)) {
    print $name . "\t" . $colour . "\t" . $cals . "\n";
}
                  
                

위의 예는 다음과 유사한 결과를 출력합니다.

apple   red     150
banana  yellow  175
kiwi    green   75
orange  orange  150
mango   red     200
strawberry      red     25
                

기타