-1

我有一些问题,请帮助我。

  1. 在 PHP/MySQL 中,我有一个要生成二维数组的查询,我该怎么做?
  2. 我有一个 php 数组代码,如下所示:

    $menu = Array( // I wanna to get data from a SQL SELECT.
        Array('id'=>1,'title'=>'Menu 1',          'parent_id'=>null),
        Array('id'=>2,'title'=>'Sub 1.1',         'parent_id'=>1),
        Array('id'=>3,'title'=>'Sub 1.2',         'parent_id'=>1),
        Array('id'=>4,'title'=>'Sub 1.3',         'parent_id'=>1),
        Array('id'=>5,'title'=>'Menu 2',          'parent_id'=>null),
        Array('id'=>6,'title'=>'Sub 2.1',         'parent_id'=>5),
        Array('id'=>7,'title'=>'Sub Sub 2.1.1',   'parent_id'=>10),
        Array('id'=>8,'title'=>'Sub 2.2',         'parent_id'=>5),
        Array('id'=>9,'title'=>'Menu 3',          'parent_id'=>null),
        Array('id'=>10,'title'=>'Menu 3',          'parent_id'=>null),
    );
    

    如何使用 mysql 生成这个简单的数组?

    <?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("Could not connect: " . mysql_error());
    mysql_select_db("mydb");
    
    $result = mysql_query("SELECT * FROM mytable");
    
    //this is wrong,but I wanna to reach this effect↓↓↓↓↓↓↓↓
    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
        echo "Array('id'=>$row["id"],'title'=>'$row["title"]','parent_id'=>$row["parent_id"]),"
    
    }
    
    ?>
    
4

2 回答 2

1

创建一个索引为零的数组并将数组附加到它。

$rows = array();
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    $rows[] = $row;
}
于 2013-04-22T03:37:32.033 回答
0
$data = array();

for ($i=1; $i<4; $i++) {
    $row = array();
    $row[] = $i;
    $row[] = $i*3;
    $row[] = $i*9;

    $data[] = $row;
}

var_dump($data);

--output:--
array(3) {
  [0]=>
  array(3) {
    [0]=>
    int(1)
    [1]=>
    int(3)
    [2]=>
    int(9)
  }
  [1]=>
  array(3) {
    [0]=>
    int(2)
    [1]=>
    int(6)
    [2]=>
    int(18)
  }
  [2]=>
  array(3) {
    [0]=>
    int(3)
    [1]=>
    int(9)
    [2]=>
    int(27)
  }
}
于 2013-04-22T03:43:12.447 回答