如何从数据库中为数组中的每个索引选择

时间:2018-11-18 11:38:58

标签: php mysql

我目前有下面的PHP代码,该代码返回通过$_GET['table']传递的表的内容数组。

$getTable = "SELECT * FROM " .$_GET['table'];       
$tableExe = $auth_table->runQuery($getTable); 
$tableExe->execute();
$tableArray  = $tableExe->fetchAll(PDO::FETCH_ASSOC);

我添加以下内容,这些内容将选择数组中的每个索引以及我想要获取的值:

$lvl1_pos_1 = $tableArray[0]['user_id']; 
$lvl1_pos_2 = $tableArray[1]['user_id']; 
$lvl1_pos_3 = $tableArray[2]['user_id']; 
$lvl1_pos_4 = $tableArray[3]['user_id']; 
$lvl1_pos_5 = $tableArray[4]['user_id']; 
$lvl1_pos_6 = $tableArray[5]['user_id']; 
$lvl1_pos_7 = $tableArray[6]['user_id']; 
$lvl1_pos_8 = $tableArray[7]['user_id']; 

现在,我想找到一种方法,可以轻松地收集与每个user_name相关联的user_id's。需要输出带有user_name的结果,如下所示:

<div><?php echo $lvl1_pos_1; ?><?div>
<div><?php echo $lvl1_pos_2; ?><?div>
<div><?php echo $lvl1_pos_3; ?><?div>
<div><?php echo $lvl1_pos_4; ?><?div>
.....
.....
<div><?php echo $lvl1_pos_8; ?><?div>

关于如何轻松实现此目标的任何建议吗?

2 个答案:

答案 0 :(得分:0)

您可以使用foreach()循环来迭代表数据行,如下所示,并轻松捕获user_iduser_name,如下所示。我使用了另一个名为$simplified_array的数组来捕获user_id作为键和user_name作为值。

$simplified_array = [];
foreach($tableArray as $key=>$value){
  simplified_array[$value['user_id']] = $value['user_name'];
}

//check what it contains, debug purpose only.
print_r($simplified_array);

上面的$simplified_array包含 user_id 作为键和 user_name 作为值,因此您可以轻松地对其进行迭代以创建 div 为你想要的。

答案 1 :(得分:0)

我将从您拥有的$ TableArray变量开始。 (顺便说一句,这是一个评论,但我的声誉不允许我发表评论) 由于$ TableArray是一个数组,所以也许您想说明如何遍历它。也许像这样:

 <?php
foreach($TableArray as $item):
?>
<div><?php //echo "Your data here"; ?></div>
<?php
endforeach;
?>

另外,关闭代码的格式错误