问题
希望从数据库获取一些数据。
解决方案
使用PDO::query()向数据库发送SQL查询,然后利用一个foreach循环获取每行结果。
向数据库发送查询
// 设置数据库连接所需的用户名
$user = 'admin';
// 设置数据库连接所需的密码
$password = '123456';
// 创建一个PDO实例来连接到MySQL数据库
// DSN(数据源名称)包含数据库类型(mysql)、主机名(127.0.0.1)、端口号(3306)和数据库名(dvwa)
$db = new PDO('mysql:host=127.0.0.1;port=3306;dbname=dvwa', $user, $password);
// 使用PDO实例的query方法执行SQL查询
// 该查询从zodiac表中选择symbol和planet两列,并按id列升序排序
$st = $db->query('SELECT symbol,planet FROM zodiac ORDER BY id ASC');
// 使用fetchAll方法从结果集中获取所有行
// fetchAll方法返回一个包含所有行的数组,其中每行都是一个关联数组,键是列名
foreach($st->fetchAll() as $row){
// 在foreach循环中,$row代表结果集中的一行
// 通过$row数组的键(列名)来访问对应的值
// 使用双引号和花括号插值来拼接字符串和变量
print "{$row['symbol']} goes with {$row['planet']}
";
}