从 mysqli 结果中读取值
Reading values from mysqli result
我正在尝试从我的sqli 查询中读取比较值,但没有成功。
这是我的代码示例:
$sql = "SELECT team, won, lost, points, goals_for, goals_agn FROM teaminfo WHERE tour_id=5 ORDER BY points DESC, (goals_for - goals_agn) DESC, goals_for DESC ;";
$query = $this->db_connection->query($sql);
所以它是一个简单的 sql 查询,我从 teaminfo DB 中获取所有球队,我想根据特定标准(分数、进球...)比较它们,看看哪个球队将进入下一个比赛阶段。
使用类似循环的方式打印所有值很简单:
while ($team=mysqli_fetch_array($query)) {... some code ...}
但我不需要这个。我只想访问其中的几个并进行比较。例如:
//Compare 3rd team points from $query with 4th team points from $query
If ($team[3]['points']==$team[4]['points'])
{
I would do something..
} else ....
我只需要 "transform" $query,这样我就可以手动使用其中的所有数据。我尝试了 php.net 中的一些东西来获取数据,但就像我说的,一切都不成功。
您可以将所有数据放在一个数组中,然后使用它。
$teams = array();
while ($team=mysqli_fetch_array($query)) {
$teams[$team['team']] = $team;
}
然后您可以通过$teams['teamname']
访问它们
if($teams['teamA']['points'] == $teams['teamB']['points']){
// do something
}
可以只使用
$teams[] = $team;
填充数组。但我建议使用关联填充,因为这样可以更轻松地为团队访问数据。只有一个数字条目,如果你想使用特定团队的数据,你必须检查他们的名字。
我正在尝试从我的sqli 查询中读取比较值,但没有成功。
这是我的代码示例:
$sql = "SELECT team, won, lost, points, goals_for, goals_agn FROM teaminfo WHERE tour_id=5 ORDER BY points DESC, (goals_for - goals_agn) DESC, goals_for DESC ;";
$query = $this->db_connection->query($sql);
所以它是一个简单的 sql 查询,我从 teaminfo DB 中获取所有球队,我想根据特定标准(分数、进球...)比较它们,看看哪个球队将进入下一个比赛阶段。
使用类似循环的方式打印所有值很简单:
while ($team=mysqli_fetch_array($query)) {... some code ...}
但我不需要这个。我只想访问其中的几个并进行比较。例如:
//Compare 3rd team points from $query with 4th team points from $query
If ($team[3]['points']==$team[4]['points'])
{
I would do something..
} else ....
我只需要 "transform" $query,这样我就可以手动使用其中的所有数据。我尝试了 php.net 中的一些东西来获取数据,但就像我说的,一切都不成功。
您可以将所有数据放在一个数组中,然后使用它。
$teams = array();
while ($team=mysqli_fetch_array($query)) {
$teams[$team['team']] = $team;
}
然后您可以通过$teams['teamname']
if($teams['teamA']['points'] == $teams['teamB']['points']){
// do something
}
可以只使用
$teams[] = $team;
填充数组。但我建议使用关联填充,因为这样可以更轻松地为团队访问数据。只有一个数字条目,如果你想使用特定团队的数据,你必须检查他们的名字。