我有一个奇怪的问题,我正在使用MAMP服务器,我试图从表中获取所有数据,所以他是我的简单代码:
$dsn = "mysql:host=localhost;dbname=apptfq";
$user = "root";
$passwd = "root";
$pdo = new PDO($dsn, $user, $passwd);
$stm = $pdo->query("SELECT * FROM DAYTF");
$days = $stm->fetch();
var_dump($days);
我的表上大约有35行,但是var_dump提供的内容没有意义,我的表是这样的:
daytf -- id
-- datework
-- twork
-- texcuse
-- tnote
-- iwork
-- iexcuse
-- inote
这就是我得到的(我只得到第一行,带有一些额外的字段-没有键重复):
array(16) { ["id"]=> string(1) "1" [0]=> string(1) "1" ["datework"]=> string(10) "25-11-2019" [1]=> string(10) "25-11-2019" ["twork"]=> string(1) "0" [2]=> string(1) "0" ["texcuse"]=> string(4) "None" [3]=> string(4) "None" ["tnote"]=> string(4) "None" [4]=> string(4) "None" ["iwork"]=> string(1) "0" [5]=> string(1) "0" ["iexcuse"]=> string(4) "None" [6]=> string(4) "None" ["inote"]=> string(4) "None" [7]=> string(4) "None" }
对此有任何解决方案?
任何帮助将不胜感激?
fetch()
方法返回“结果集中的下一行”。
如果要获取所有数据,则需要使用fetchAll()
。
$stm = $pdo->query("SELECT * FROM DAYTF");
$days = $stm->fetchAll();
另请参见:https://www.php.net/manual/en/pdostatement.fetchall.php