加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用php从mysqli数据库查询构建多维数组

发布时间:2020-12-13 21:53:53 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试使用 mysqli和php从我的数据库表中构建一个多维数学的学生和他们的数据. 我希望我的数组看起来像这样 Array #$adult array( [626] = Array #student no 626 data ( [name] = emily,[age] = 43,[height] = 156,) [627] = #student no 627 data ( [n
我正在尝试使用 mysqli和php从我的数据库表中构建一个多维数学的学生和他们的数据.

我希望我的数组看起来像这样

Array #$adult array
(
    [626] => Array #student no 626 data
        (
            [name] => emily,[age] => 43,[height] => 156,)
    [627] =>   #student no 627 data
        (
            [name] => luke,[age] => 31,[height] => 176,)
)

数字是成员ID,后跟数据.

所以我尝试了以下内容

$sql = "SELECT * FROM pzgym_waitinglist WHERE seen = 0 GROUP BY gym_discipline,school_yr,id";
$result = $db->query($sql);

if ($result->num_rows > 0)
{
    #set up array
    $adult = array();

    while($row = $result->fetch_array()) 
    {
        $id = $row["id"];
        $name = $row["name"];
        $age= $row["age"];
        $height = $row['height'];

        if($row['gym_discipline'] == "Adult Gymnastics")
        {
            $adult[$id] = "['name'] => $name,['age'] => $age,['height'] => $height";

        }
    }
}

但这并没有产生正确的结果,所以我猜我的阵列建设很糟糕:(这是我得到的.

Array
(
    [626] => ['name'] => Emily,['age'] => 43,['height'] => 156
    [627] => ['name'] => Luke,['age'] => 31,['height'] => 176
)

有人可以帮助我,从我的数据库中的数据构建一个成功的多维数组

非常感谢

解决方法

创建数组时需要第二级,而不是简单地向数组添加键和数据.

因此,首先使用学生ID创建索引(键),然后该新索引的值将是包含该学生的所有数据的子数组.
然后下一个循环它将为下一个学生做同样的事情.

就像是:

while($row = $result->fetch_array()) 
{
    $id = $row["id"];
    $name = $row["name"];
    $age= $row["age"];
    $height = $row['height'];

    if($row['gym_discipline'] == "Adult Gymnastics")
    {
        $adult[$id] = array(
           "name" => $name,"age" => $age,"height" => $height,);

    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读