2011-10-09 24 views
5

Tôi đang tạo một hàm hoạt động giống như hàm variable_initialize() của Drupal để kéo tất cả các cặp khóa/giá trị vào một biến toàn cầu. Tôi đang cố gắng để tìm các thông số thích hợp tôi cần phải đưa vào fetchAll() để loại bỏ số hàng và về cơ bản những gì lấy (PDO :: FETCH_ASSOC) nào nhưng đối với tất cả các hàng trả lại.PHP PDO FetchTất cả đối số để xóa số hàng khỏi kết quả

tôi về cơ bản muốn fetchAll trở lại:

Array { 
    [name] = value, 
    [name2] = value2, 
    [name3] = value3, 
} 

Bảng biến là 2 bảng cột (tên) đơn giản | (value)

function variable_init() { 
global $db, $variable; 

$query = "SELECT * FROM variable"; 
$stmt = $db->prepare($query); 
$stmt->execute(); 
$result = $stmt->fetchAll(); //need help here 

    foreach($result as $name => $value) { 
     $variable[$name] = $value; 
    } 
} 

Tôi đã thử PDO_COLUMN/PDO_GROUP/etc. .. nhưng tôi dường như không thể bù đắp mảng để xóa số hàng. Cảm ơn.

Trả lời

6

Tôi nghĩ bạn có thể bị nhầm lẫn về những gì trả về PDOStatement::fetchAll().

Phương thức trả về tất cả các hàng (mảng hoặc đối tượng, tùy thuộc vào kiểu tìm nạp) trong một mảng .

Hãy thử điều này

$result = $stmt->fetchAll(PDO::FETCH_ASSOC); 

foreach ($result as $row) { 
    $variable[$row['name']] = $row['value']; 
} 
+0

Thanks for the help. Tôi vẫn đang học PDO một cách chậm rãi nhưng chắc chắn. – Brandon

Các vấn đề liên quan