将MySql表数据选择为数组

Kar*_*mam 6 php mysql arrays metadata

我尝试从mysql中捕获数据,将它们全部放入数组中.假设:

    users table
    -----------------------
    id| name | code 
    ----------------------
    1| gorge | 2132
    2| flix | ksd02
    3| jasmen | skaod2

    $sql = mysql_query("select id, name, code from users");
    $userinfo = array()
    while($row_user = mysql_fetch_array($sql)){
    $userinfo = $row_user[name] 
    }
-------------------------
foreach($userinfo as $usinfo){
echo $usinfo."<br/>";
}
Run Code Online (Sandbox Code Playgroud)

这是我只能插入用户名但不能在userinfo数组中插入代码和id的问题,请帮我在同一个数组中插入所有数据.

[PS]请不要面向对象.

jas*_*bar 31

$sql = mysql_query("select id, name, code from users");
$userinfo = array();

while ($row_user = mysql_fetch_assoc($sql))
    $userinfo[] = $row_user;
Run Code Online (Sandbox Code Playgroud)

这将为您$userinfo提供具有以下结构的数组:

[
    [id => 1, name => 'gorge', code => '2123'],
    [id => 2, name => 'flix', code => 'ksd02'],
    [id => 3, name => 'jasmen', code => 'skaod2']
]
Run Code Online (Sandbox Code Playgroud)

如果要输出数据:

foreach ($userinfo as $user) {
    echo "Id: {$user[id]}<br />"
       . "Name: {$user[name]}<br />"
       . "Code: {$user[code]}<br /><br />";
}
Run Code Online (Sandbox Code Playgroud)

  • @ user553786,请学会说清楚正确. (5认同)

Phi*_*ord 5

while($row_user = mysql_fetch_assoc($sql)){
   $userinfo[] = $row_user;
}

foreach($userinfo as $usrinfo){
   echo "Id: ".$usrinfo['id']."<br />";
   echo "Name: ".$usrinfo['name']."<br />";
   echo "Code: ".$usrinfo['code']."<br />";
}
Run Code Online (Sandbox Code Playgroud)

  • 无需创建新数组。使用 mysql_fetch_assoc 或将 MYSQL_ASSOC 传递给 mysql_fetch_array 以获取您正在构建的数组。字符串(您的数组索引)属于单引号。您的代码将在每个循环中抛出 3 个 E_NOTICE 通知。 (2认同)