2016-05-17 13 views
0

我有一個理想的13行和9列的php表。它是由shell腳本提供的文本文件創建的。它在2分鐘後變化,問題有時最後2,3行沒有9列,它們的列與標題沒有對齊。列向左。有沒有一種方法來創建應保持柱代替表,即使其前柱缺失我如何在php中創建一個表格,其列數不同

file_get_contents('/c:/personal/data') or die ("Unable"))); 
//$length = count($new_array); 
    //print_r($new_array) 
$table1 = '<table class = "table table-hover" >'; 
$trimmed = trim($myfile); 
$filearray = explode("\n", $trimmed); 


foreach($filearray as $row) { 
$table1 .= '<tr>'; 
// here separate your row that is a string, into an array 
$cols = explode(" ", $row); 


foreach($cols as $value) { 

    $table1 .= '<td style = "text-align: left" >'.$value.'</td>'; 
} 
$table1 .= '</tr>'; 

} $表1 =「」;

echo $table1; 
+0

'$ table1。='';' - 這段代碼是幹什麼用的? :) – user4035

+0

那麼,顯然沒有增加任何東西。 :) – durbnpoisn

回答

0

如果行存在你可以檢查,如果沒有插入一個空單元格,就像這樣:

... 
foreach($filearray as $row) { 
    $table1 .= '<tr>'; 
    // here separate your row that is a string, into an array 
    $cols = explode(" ", $row); 
    for ($i=0; $i < 9; $i++){ 
     if (isset($cols[$i])) 
      $table1 .= '<td style = "text-align: left" >'.$value.'</td>'; 
     else 
      $table1 .= '<td style = "text-align: left" ></td>'; 
    } 
    $table1 .= '</tr>'; 
} 
0

問題是有時最後2,3行不具有9列,他們的 列與標頭不對齊

您需要檢查,實數列的數量是否等於理想數量。如果更少 - 添加空列:

$ideal = 9; 
$n = count($cols); 
if($n < $ideal) 
{ 
    for ($i = $n; $i < $ideal; ++$i) 
    { 
     $cols[$i] = ''; 
    } 
} 
相關問題