(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDOStatement::bindColumn — Bir sütunu bir PHP değişkeni ile ilişkilendirir
$sütun
,&$değişken
,$veri_türü
= PDO::PARAM_STR,$uzunluk
= 0,$seçenekler
= null
Bir sorgunun sonuç kümesindeki belli bir sütunu bir değişken ile ilişkilendirir. Her PDOStatement::fetch() veya PDOStatement::fetchAll() çağrısında sütunlarla ilişkili değişkenler güncellenir.
Bilginize:
Deyim çalıştırılana kadar sütun bilgisi PDO'ya görünür olmadığından taşınabilir uygulamaların bu yöntemi bir PDOStatement::execute() çağrısından sonra kullanmaları gerekir.
Ancak, PgSQL sürücüsü kullanılırken bir LOB sütununu bir akımla ilişkilendirmek için bu yöntemin PDOStatement::execute() çağrısından önce kullanılması gerekir. Aksi takdirde büyük nesnenin nesne kimliği (oid) bir tamsayı olarak döner.
sütun
Sütunun numarası veya ismi; sütun numaraları 1'den başlar. Sütun isminin sürücüden dönen isimle aynı harf büyüklüklerine sahip olmasına dikkat edin.
değişken
Sütun ile ilişkilendirilecek PHP değişkeninin ismi.
veri_türü
PDO::PARAM_*
sabitlerinden biri olarak veri türü.
uzunluk
Yer ayırmak için ipucu olarak kullanılır.
seçenekler
Sürücü için isteğe bağlı bağımsız değişkenler.
PDO::ATTR_ERRMODE
özniteliğine
PDO::ERRMODE_WARNING
atanırsa
E_WARNING
düzeyinde bir hata çıktılanır.
PDO::ATTR_ERRMODE
özniteliğine
PDO::ERRMODE_EXCEPTION
atanırsa
PDOException istisnası oluşur.
Örnek 1 - Sonuç kümesi çıktısının PHP değişkenleri ile ilişkilendirilmesi
Sütunları birer PHP değişkeni ile ilişkilendirmek, sonuç kümesinin her satırının anında kullanıma hazır olmasını sağlamanın en kolay ve en verimli yoludur. Aşağıdaki örnekte, sütunların alınması ve değişkenlerle ilişkilendirilirken akıllı öntanımlılarla bazı seçeneklerin kullanılışı gösterilmiştir.
<?php
$stmt = $dbh->prepare('SELECT name, colour, calories FROM fruit');
$stmt->execute();
/* Sütun numarasına göre ilişkilendir */
$stmt->bindColumn(1, $name);
$stmt->bindColumn(2, $colour);
/* Sütun ismine göre ilişkilendir */
$stmt->bindColumn('calories', $cals);
while ($stmt->fetch(PDO::FETCH_BOUND)) {
print $name . "\t" . $colour . "\t" . $cals . "\n";
}
Yukarıdaki örnek şuna benzer bir çıktı üretir:
apple red 150 banana yellow 175 kiwi green 75 orange orange 150 mango red 200 strawberry red 25