从用户定义的mysql列创建数组中的数组

时间:2014-02-14 06:07:44

标签: php

在表格中,我的列名为DATE,TIME,L1,L2,L3,L4及其对应值

DATE | TIME    |  L1 | L2 | L3 | L4
------------------------------------------
24Feb|14:00:09|20  | 21 |22   | 23
24Feb|14:01:09|20  | 29 |23   | 24
24Feb|14:02:09|20  | 59 |23   |44

我想创建一个数组数组

将L1,L2,L3,l4下的所有值作为数组

和第二个数组在一个又一个数组之后。

$columns_array  = array(array(L1),array(L2),array(L3),array(L4));

$time = array(t1,t2,t3,t4);

下面的代码我试过

$select_qry  = mysql_query("select * from tab");
  while($row=mysql_fetch_assoc($select_qry))
  {
      $array[] = $row;
  }
 unset($array[0]);
$rt =  array_values($array);

2 个答案:

答案 0 :(得分:0)

我认为你可以像这样使用array_merge:
     $result=mysqli_query($sql); $result=mysqli_fetch_assoc($result); /*this returns 6 associative arrays $date, $time, $L1, $L2, $L3, $L4*/ $time_data=array_merge($date,$time); $Ls_data=array_merge($L1, $L2, $L3, $L4);

答案 1 :(得分:-1)

这是你要拉的表:

DATE  | TIME     | L1 | L2 | L3 | L4
------------------------------------------
24Feb | 14:00:09 | 20 | 21 | 22 | 23
24Feb | 14:01:09 | 20 | 29 | 23 | 24
24Feb | 14:02:09 | 20 | 59 | 23 | 44

您希望将L1,L2,L3和l4字段中的值插入到二维数组中,如下所示:

$columns_array  = array(array(L1),array(L2),array(L3),array(L4));

并且您希望所有时间条目都插入到时间数组中:

$time = array(t1,t2,t3,t4);

根据您的规范,对于此特定样本数据表,二维数组应该看起来像这样:

$columns_array['L1'][0] = 20;
$columns_array['L1'][1] = 20;
$columns_array['L1'][2] = 20;

$columns_array['L2'][0] = 21;
$columns_array['L2'][1] = 29;
$columns_array['L2'][2] = 59;

$columns_array['L3'][0] = 22;
$columns_array['L3'][1] = 23;
$columns_array['L3'][2] = 23;

$columns_array['L4'][0] = 23;
$columns_array['L4'][1] = 24;
$columns_array['L4'][2] = 44;

当然,时间数组看起来应该是这样的:

$time[0] = 14:00:09;
$time[1] = 14:01:09;
$time[2] = 14:02:09;

以下代码将完成此操作:

$time = array();
$L1_array = array();
$L2_array = array();
$L3_array = array();
$L4_array = array();

$query = mysql_query("SELECT * FROM `table`");

因为我们迭代表中的每个记录,所以变量$ row应该 每次通过while循环时,都会以以下格式显示: $ row == array(“24Feb”,“14:00:09”,“20”,“21”,“22”,“23”) 意思是,如果我在第一次通过期间访问$ row ['TIME'],它会给我14:00:09

while($row = mysql_fetch_assoc($query)){
    $time[] = $row['TIME'];
    $L1_array[] = $row['L1'];  // first pass will set this to: 20
    $L2_array[] = $row['L2'];  // first pass will set this to: 21
    $L3_array[] = $row['L3'];  // first pass will set this to: 22
    $L4_array[] = $row['L4'];  // first pass will set this to: 23
}

此while循环已循环遍历每个样本记录 每个L_arrays都是这样的:

$L1_array == array(20,20,20);
$L2_array == array(21,29,59);
$L3_array == array(22,23,23);
$L4_array == array(23,24,44);

现在,我们要做的就是将每个“L”数组放入columns_array中,然后瞧。

$columns_array = array($L1_array,$L2_array,$L3_array,$L4_array);