0
返回關聯數組這是我會怎樣正常運行與現在$row[]
可以用來表示環路內數據庫信息從功能
$query = "SELECT * from courses ORDER BY id DESC LIMIT 4";
$stmt = $db->prepare($query);
$stmt->execute();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { }
一個循環。
我的問題是,我將利用這個查詢很多單獨的while循環。但是,我不希望每次需要時都要完成此聲明,所以我希望函數能夠引用任何所需的變量。
例如,我試了一下。
function retrieve_assoc_array_limit4($table) {
$user = '***';
$pass = '***';
$db = new PDO('mysql:host=localhost;dbname=***', $user, $pass);
$query = ("SELECT * FROM ? ORDER BY id DESC LIMIT 4");
$stmt = $db->prepare($query);
$stmt->bindValue(?, $table);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
return $row;
}
但是,當試圖同時它獲得相同信息whiled的無限量的回報。
while($row = retrieve_assoc_array_limit4($table_name)) {
exho $data;
}
我的問題是如何在邏輯上使用的第一個代碼的函數,這樣我可以在相同的使用它,而無情地寫出了聲明全文。
調用使用fetchall()而不是fetch()方法:
如果您使用PHP5.5或更高版本,您可能需要考慮生成器;但考慮編寫一個通用函數,其中限制作爲參數傳遞,而不是針對您要使用的每個不同限制單獨命名的函數。 –
5.4.12是我正在使用的版本。 –
請注意,您__無法綁定表名或列名 –