Skip to content

Easily converts PHP arrays into plain text tables, CSV files or strings with a fixed field length for each column

License

Notifications You must be signed in to change notification settings

kabachello/phpTextTable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

phpTextTable

Easily converts PHP arrays into plain text tables, CSV files or strings with a fixed field length for each column

Installation

composer require kabachello/phptexttable:*

Quick start

error_reporting(E_ALL & ~E_NOTICE);

$rows = array(
		array('City' => 'Berlin', 'State' => 'Berlin', 'Pop. 1950' => 3336026, 'Pop. 2015' => 3520031),
		array('City' => 'Hamburg', 'State' => 'Hamburg', 'Pop. 1950' => 1605606, 'Pop. 2015' => 1787408),
		array('City' => 'Munich', 'State' => 'Bavaria', 'Pop. 1950' => 831937, 'Pop. 2015' => 1450381),
		array('city' => 'Cologne', 'State' => 'North Rhine-Westphalia', 'Pop. 1950' => 594941, 'Pop. 2015' => 1060582)
);

// Initialize the table
$text_table = new kabachello\phpTextTable\TextTable($rows);

// Set right alignment for the numeric columns
$text_table->setColumnAlignments(array('Pop. 1950' => 'right', 'Pop. 2015' => 'right'));

// Set the numer columns to the same fixed with
$text_table->setColumnWidthMax(array('Pop. 1950' => 11, 'Pop. 2015' => 11));

// Disable automatic width adjustment (only affects columns with max width)
$text_table->setColumnWidthAuto(false);

// Print the table
print $text_table->print($row_key);

will print the following:

+---------+------------------------+-------------+-------------+
|  CITY   |         STATE          |  POP. 1950  |  POP. 2015  |
+---------+------------------------+-------------+-------------+
| Berlin  | Berlin                 |     3336026 |     3520031 |
| Hamburg | Hamburg                |     1605606 |     1787408 |
| Munich  | Bavaria                |      831937 |     1450381 |
| Cologne | North Rhine-Westphalia |      594941 |     1060582 |
+---------+------------------------+-------------+-------------+

Credits

This library was inspired by ArrayToTextTable

About

Easily converts PHP arrays into plain text tables, CSV files or strings with a fixed field length for each column

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages