2011-07-27 104 views
2

这里是我的关联数组:PHP显示关联数组

$req_data1[]=array(
    'depart1'=>$_REQUEST['to'], 
    'd_time1'=>$d_time5, 
    'stop'=>"", 
    'leave_stop'=>"", 
    'arrival1'=>$_REQUEST['from'], 
    'a_time1'=>$end_time5, 
    'price1'=>intval($final_price), 
    'air_line'=>"xxxxx"); 

这里是我的排序算法:

foreach ($req_data as $key => $row) { 
    $depart[$key] = $row['depart']; 
    $d_time[$key] = $row['d_time']; 
    $stop[$key] = $row['stop']; 
    $leave_stop[$key] = $row['leave_stop']; 
    $arrival[$key] = $row['arrival']; 
    $a_time[$key] = $row['a_time']; 
    $price[$key] = $row['price']; 
} 

array_multisort($price,SORT_ASC, $req_data); 

我整理后显示数据:

foreach($req_data as $key=>$row) { 
    echo "</br>"; 

    foreach($row as $key2=>$row2){ 
     echo $row2; 
    } 
} 

现在我的问题是,我想将该数组放入HTML表格中,但不知道如何。这是我的代码,我试过,但迄今为止它不工作:

$cols = 5; 

echo "<table border=\"5\" cellpadding=\"10\">"; 

for ($r=0; $r < count($row2); $r++) { 
    echo "<tr>"; 

    for ($c=0; $c<$cols; $c++) { 

     ?> <td> <?php $input[$r+$c] ?> </td> <?php 
     } 

    echo "</tr>"; 
    $r += $c; 
} 

echo "</table>"; 
?> 

可以在任何一个告诉我什么是错我的代码,或者我怎么能显示这个排序的数据到表?谢谢。

+0

您可以格式化您的代码,使其更具可读性吗?这会让人们更容易帮助你。 –

+0

什么是不准确 – Ibu

回答

2

为什么不修改您已经用于显示数据的循环?

echo "<table>"; 
foreach($req_data as $key=>$row) { 
    echo "<tr>"; 
    foreach($row as $key2=>$row2){ 
     echo "<td>" . $row2 . "</td>"; 
    } 
    echo "</tr>"; 
} 
echo "</table>"; 
0
echo "<table border=\"5\" cellpadding=\"10\">"; 
for ($r=0; $r < count($row2); $r++) { 
    echo "<tr>"; 
    for ($c=0; $c<$cols; $c++) { ?> 
     <td> <?php $input[$r+$c] ?> </td> 
    <?php } 

    echo "</tr>"; 
    $r += $c; 
} 
echo "</table>";?> 

尝试是这样的

echo "<table>"; 
for($r=0;$r<count($row2);$r++){ 
echo "<tr>"; 
for($c=0;$c<$cols;$c++){ 
echo "<td>".[VARIABLE YOU WANT TO PRINT]."</td>"; 
} 
echo "</tr>"; 
} 
echo "</table>"; 
1
$toOutput = '<table>'; 
$showHeader = true; 
$memberData = $reportObj->getMemberData(); 
while($row = mysql_fetch_assoc($memberData)) 
{ 
    $toOutput .= '<tr>'; 

    //Outputs a header if nessicary 
    if($showHeader) 
    { 
     $keys = array_keys($row); 
     for($i=0;$i<count($keys);$i++) 
     { 
      $toOutput .= '<td>' . $keys[$i] . '</td>'; 
     } 
     $toOutput .= '</tr><tr>'; 
     $showHeader = false; 
    } 

    //Outputs the row 
    $values = array_values($row); 
    for($i=0;$i<count($values);$i++) 
    { 
     $toOutput .= '<td>' . $values[$i] . '</td>'; 
    } 

    $toOutput .= '</tr>'; 
} 
$toOutput .= '</table>'; 

echo 'Test page'; 
echo $toOutput; 

对不起,死灵,但我实际上是想看看是否有这个一个内置的功能,因为我在写这个。

+1

你真的在你的答案领域问一个问题吗? – Sven

+0

您是否找到内置函数? – beppe9000

-1

function DumpTable($array_assoc) { 
    if (is_array($array_assoc)) { 
     echo '<table class="table">'; 
     echo '<thead>'; 
     echo '<tr>'; 
     list($table_title) = $array_assoc; 
     foreach ($table_title as $key => &$value): 
      echo '<th>' . $key . '</th>'; 
     endforeach; 
     echo '</tr>'; 
     echo '</thead>'; 
     foreach ($array_assoc as &$master): 
      echo '<tr>'; 
      foreach ($master as &$slave): 
       echo '<td>' . $slave . '</td>'; 
      endforeach; 
      echo '</tr>'; 
     endforeach; 
     echo '</table>'; 
     return; 
    } 
} 

+0

嘿,欢迎来到StackOverflow!你能解释你的代码,为什么它可以工作吗? –