PDOStatement::bindColumn — Vincula uma coluna a uma variável PHP (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
bool PDOStatement::bindColumn ( misto $column , misto &$param [, int $type [, int $maxlen [, misto $driverdata ]]] )
Organiza para que uma variável específica seja vinculada a uma determinada coluna em um conjunto de resultados de consulta. Cada chamada para PDOStatement::fetch() ou PDOStatement::fetchAll() atualizará todas as variáveis vinculadas à coluna.
Nota: As informações do PDO sobre colunas nem sempre estão disponíveis antes da execução da instrução. Aplicativos portáteis devem chamar esta função (método) após PDOStatement::execute(). Porém, ao usar o driver PgSQL, para poder vincular uma coluna LOB como um fluxo, a aplicação deve chamar este método antes de chamar PDOStatement::execute(), caso contrário o OID do objeto grande será retornado como um número inteiro.
Número da coluna (indexado a partir de 1) ou nome da coluna no conjunto de resultados da coluna . Se estiver usando nomes de colunas, observe que os nomes devem ser consistentes com as maiúsculas e minúsculas dos nomes de colunas retornados pelo driver.
param O nome da variável PHP que será vinculada à coluna
typeO tipo de dados do parâmetro especificado pelas constantes PDO::PARAM_*.
dica de pré-alocação maxlen .
Parâmetro opcional do driver driverdata .
Retorna TRUE em caso de sucesso ou FALSE em caso de falha.
Vincular colunas em um conjunto de resultados a variáveis PHP é uma maneira eficiente de disponibilizar imediatamente os dados contidos em cada linha em seu aplicativo. O exemplo a seguir demonstra como o PDO vincula e recupera colunas com diversas opções e valores padrão.
<?phpfunction readData($dbh) { $sql = 'SELECT nome, cor, calorias FROM fruta'; try { $stmt = $dbh->prepare($sql); Ligação de número*/ $stmt->bindColumn(1, $name); Vinculação por nome de coluna*/ $stmt->bindColumn('calories', $cals); while ($row = $stmt->fetch(PDO::FETCH_BOUND)) { $data = $name . color . "t" .$cals . "n"; imprimir $dados; }}readData($dbh);?>
A rotina acima produzirá:
vermelho maçã 150 amarelo banana 175 verde kiwi 75 laranja laranja 150 vermelho manga 200 vermelho morango 25