Показать сообщение отдельно

  #5  
Старый 11.07.2007, 02:16
hhover
Познающий
Регистрация: 21.05.2007
Сообщений: 61
С нами: 9986942

Репутация: 145
По умолчанию

ant0ha,
Можно и попроще...

Thanat0z,
Не знаю насколько адекватно будет реагировать на ошибки, но в случае валидных входных данных работает исправно:
PHP код:
<?php

$main_array 
= file ( 'filename.txt' );

foreach ( 
$main_array as $key => $row )
{

  
$row = trim ( $row );
  
$columns = explode ( "|", $row );

  foreach ( 
$columns as $k => $column )
  {

    
$column = trim ( $column );
    
$table[$key][$k] = $column;

    
$strlen = strlen ( $column );
    if ( 
$strlen > $table['len'][$k] )
    {
      
$table['len'][$k] = $strlen;
    }

  }
  
}

foreach ( 
$table['len'] as $int )
{
  
$max_len += $int;
}
$max_len += count ( $table['len'] ) * 3;
$max_len += 1;

$row_str = str_pad ( '', $max_len, '-' );


echo 
"
<pre>
"
;

echo 
$row_str;
foreach ( 
$table as $key => $row )
{
  echo 
"\r\n";
  echo 
"|";

  foreach ( 
$row as $k => $column )
  {
    
$column = str_pad ( $column, $table['len'][$k] );
    echo 
" " . $column . " |";
  }

  echo 
"\r\n";
  echo 
$row_str;
}

echo 
"
</pre>
"
;

?>
 
Ответить с цитированием