我的代码就是这个
$sql = "SELECT * FROM faculty";
foreach ($pdo->query($sql) as $row) {
foreach ($row as $key => $value) {
echo $key."-".$value."<br/>";
}
}
Run Code Online (Sandbox Code Playgroud)
我正在做的事情相当简单.我的问题是为什么我得到两次相同的值,一个是密钥,mysql中的行名称(例如"surname"),另一个是数组的位置.感谢您的时间.
那是因为您的默认提取模式设置为
PDO :: FETCH_BOTH(整数)指定fetch方法应将每一行作为一个数组返回,该数组由相应结果集中返回的列名和数字索引,从第0列开始.试试例如
$pdo->query($sql, PDO::FETCH_ASSOC)
Run Code Online (Sandbox Code Playgroud)
代替.
另见:http://docs.php.net/pdo.constants