使用数据库数据在php中填充多维数组?

时间:2017-05-20 05:05:55

标签: php mysqli

我想用这个表数据填充数组 DataBase Table Data

像这个数组一样 // $学生=阵列( '用户1'=>阵列(0 => 'CS201',1 => 'cs502'),    //'user2'=>数组(0 =>'mth201',1 =>'mgt302'));

2 个答案:

答案 0 :(得分:0)

如果您使用的是PDO,则可以使用以下代码,但下次需要提供更具体的信息

$servername = "localhost";
$username = "username";
$password = "password";

$conn = new PDO("mysql:host=$servername;dbname=database_name", $username, $password);

$sth = $conn->query("SELECT * FROM table");
$result = $sth->fetchAll(PDO::FETCH_ASSOC);

$finalResult = array();

if(is_array($result))
    foreach($result as $item)
        $finalResult[$item['UserName']][] = $item["Cources"];

echo "<pre>";
var_dump($finalResult);
echo "</pre>";

答案 1 :(得分:0)

连接到您的数据库,然后查询数据库表并将mysqli结果存储在变量中。这会将查询结果放在一个包含您声明的变量名称的数组中。您可以使用while循环来完成此任务。

$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if ($mysqli->connect_errno) {
  printf("Connect failed: %s\n", $mysqli->connect_error);
  exit();
}

$sql = "SELECT * FROM `table-name`";

if ($result = $mysqli->query($sql)) {

  /* fetch associative array */
  while ($row = $result->fetch_assoc()) {
    printf ("%s (%s)\n", $row["St-ID"], $row["UserName"], $row["Cources"]);
  }
  /* free result set */
  $result->free();
}

这尚未经过测试,只是php手册中列出的基本结构。 PHP Manual on fetch_assoc()