php - 写入多维数组的位置

标签 php mysql arrays object pdo

我正在为锦标赛构建一个网络系统,并且在 PDO 对象和数组方面存在问题,基本上我有一个带有内部连接的选择,使用 PDO 从 MySQL 数据库中获取数据,我需要写下我的表的每个位置,但不知道如何。已经尝试了无法控制的方法,没有成功。这是我的代码:

$viewMatches = $conn->prepare("SELECT p.id, p.player_name FROM tbl_players p 
INNER JOIN tbl_matches m on p.id = m.player1_id
INNER JOIN tbl_tournaments t on $id = m.tournament_id = t.id");

$viewMatches->execute();
$rst = $viewMatches->fetchAll(PDO::FETCH_ASSOC);

所以现在我需要在数组的每个部分写下玩家的名字,所以我试试这个:

echo $viewMatches[0][1]; //no sucess

使用 PDO 语句返回错误

需要帮助,拜托..我找到了写所有球员的方法,但是要安装我的冠军表,我需要手动选择每个位置的球队并且不知道如何,请帮助!谢谢

最佳答案

根据 PHP Manual , PDO::FETCH_ASSOC: 返回一个由结果集中返回的列名索引的数组。

您应该通过关联键访问数组,而不是通过索引:

<?php 
echo $rst[0]['player_name']; 
?>

<?php
foreach($rst as $row){
  foreach($row as $k => $v){
    echo "Key: $k : Value: $v"; 
  } 
} 
?>

关于php - 写入多维数组的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49763605/

相关文章:

php - 检查远程主机上的 mysql 状态

php - 按时间戳对组内的行进行排序

php - 反序列化特定列

php - 通过 yum 安装 php,包括 mysql 支持

java - 打印二维数组的内容

PHP MySQL 生成新值,直到没有匹配项

php - MYSQL 对大表的低效计数

javascript - 如何通过名称访问数组?

javascript - 如何缩放 d3.js 图表并以更大的粒度重新加载数据(在 AJAX 中)

PHP如何区分0和0.0