我有這樣的代碼取得到結果只有一個
$sql = new PDO('mysql:host=localhost;dbname=b','root','root');
$f = $sql->query('select * from user');
$sql->setFetchMode(PDO::FETCH_ASSOC);
while($row = $f->fetch()){
print_r($row);
}
輸出是
Array
(
[id] => 1
[name] => turki
[mail] => ablaf
[pass] => 144
)
Array
(
[id] => 2
[name] => wrfwer
[mail] => fwerf
[pass] => werf
)
,這就是我真正想要的。但是,如果我這樣做
<?php
$sql = new PDO('mysql:host=localhost;dbname=b','root','root');
$f = $sql->query('select * from user');
$f->setFetchMode(PDO::FETCH_ASSOC);
print_r($f->fetch());
?>
輸出是
Array
(
[id] => 1
[name] => turki
[mail] => ablaf
[pass] => 144
)
它有一個結果,但我有表中的兩行;這是爲什麼?
取指曾經是在同一時間讀取一行。您可以使用fetch in loop或用戶fetchAll像其他說法來獲取所有行。 –