2012-12-04 317 views
-1

我想使用PDO庫將我的數據庫中的單個結果返回,但返回所需內容的唯一方法是將其放入foreach循環中。PHP - PDO庫返回結果

這是我如何查詢我的數據庫和獲取數據。

<? $query = " 
    SELECT 
     theme 
    FROM ncms_settings 
";  
try 
{ 
    $stmt = $db->prepare($query); 
    $stmt->execute(); 
} 
catch(PDOException $ex) 
{ 
    die("Failed to run query: " . $ex->getMessage()); 
} 
$rows = $stmt->fetchAll(); ?> 

如何通過只是在做

echo $rows['theme']; 

代替

<? foreach($rows as $row): ?> 
    $echo $row['theme'] 
endforeach; ?> 
+1

假設你有42點返回的行,你所期望的值'$行[ '主題']'(如果它的工作)? – zerkms

+0

我只有一行,應該返回1. –

+0

爲什麼我會被拒絕?我提供了所有可能的信息和我所嘗試的,是因爲答案對大多數人來說顯而易見?如果我正在學習,我很抱歉。 **編輯**感謝您的投票,誰曾經是=] –

回答

2

如果它返回的數據只有一行返回 - 只需使用

$stmt->fetch() // returns a single row (array of fields) 

代替

$stmt->fetchAll() // returns all rows (array of arrays of fields) 

http://php.net/manual/en/pdostatement.fetch.php

+0

完美! PDO圖書館的新手,有點想到fetchAll是我所需要的,非常感謝。 –