Beautify text tables with PHP

17.5.2016 602 views ;)

There is unformatted text table. Separated with tabs.

Looks like shit.

Now we write some PHP code that formatting this text to real beauty text table:

$a='kprf-sochi.ru    0    0    39    154    123    66
marcorizzishoes.ru    92    46    75    20    224    97
growth-height.ru    505    359    258    765    621    184
amper34.ru    45    74    49    28    14    62
wise-way.ru    230    140    201    52    39    61
vodaizh.ru    20    47    0    42    73    44
lostplace-film.ru    0    0    0    61    223    392
loadboxx.ru    300    638    264    138    529    82
elektrika-nn.ru    23    31    17    18    100    64
rabota-nah.ru    278    780    752    1008    481    71
your-webmagazin.ru    0    0    0    17    49    63
tessa-ug.ru    54    102    44    47    21    44
all-ukraine.ru    223    71    591    230    10    61
al-profiles.ru    74    16    22    0    97    54
za-gorod812.ru    287    269    325    185    49    41
ttitkimoskwa.ru    41    126    252    33    213    62
akb-org.ru    231    305    46    182    146    61
srs116.ru    0    0    27    0    73    68
ggpartners.ru    601    526    37    33    62    52
studiosous.ru    727    241    14    438    808    39
zaporanet.ru    1376    637    220    175    53    85
vegabeton.ru    151    48    60    25    14    66
orel-tech.ru    132    30    65    86    35    46
npz-pivo.ru    0    85    87    199    60    55
axycam-cctv.ru    116    48    27    48    47    54';

$s = explode("\r\n",$a);
foreach($s as $ss){
    $items = explode("\t",$ss);
    for ($i=0;$i<count($items);$i++){
        if (strlen($items[$i])>$maxs[$i])
            $maxs[$i]=strlen($items[$i]);
    }
}
foreach($s as $ss){
    $items = explode("\t",$ss);
    for ($i=0;$i<count($items);$i++){
        $items[$i].= str_repeat(" ",$maxs[$i]-strlen($items[$i])+2);
    }
    $out.=implode("",$items)."\n";
}

file_put_contents('test12312.txt',$out);

 

and at the text file test12312.txt will be formatted text table:

kprf-sochi.ru       0     0    39   154   123  66   
marcorizzishoes.ru  92    46   75   20    224  97   
growth-height.ru    505   359  258  765   621  184  
amper34.ru          45    74   49   28    14   62   
wise-way.ru         230   140  201  52    39   61   
vodaizh.ru          20    47   0    42    73   44   
lostplace-film.ru   0     0    0    61    223  392  
loadboxx.ru         300   638  264  138   529  82   
elektrika-nn.ru     23    31   17   18    100  64   
rabota-nah.ru       278   780  752  1008  481  71   
your-webmagazin.ru  0     0    0    17    49   63   
tessa-ug.ru         54    102  44   47    21   44   
all-ukraine.ru      223   71   591  230   10   61   
al-profiles.ru      74    16   22   0     97   54   
za-gorod812.ru      287   269  325  185   49   41   
ttitkimoskwa.ru     41    126  252  33    213  62   
akb-org.ru          231   305  46   182   146  61   
srs116.ru           0     0    27   0     73   68   
ggpartners.ru       601   526  37   33    62   52   
studiosous.ru       727   241  14   438   808  39   
zaporanet.ru        1376  637  220  175   53   85   
vegabeton.ru        151   48   60   25    14   66   
orel-tech.ru        132   30   65   86    35   46   
npz-pivo.ru         0     85   87   199   60   55   
axycam-cctv.ru      116   48   27   48    47   54

 

Really cool !

Try this..

This is little alternative for ArrayToTextTable

Simple and useful.

 


Last 5 records:

   


Smileys
Timer
ChatRoulette
Virus Detector
Calculator
Vibrator
Check domain for available
Random number generator
Referral link gen
Detector external links
Math questions
Online piano
Today: 2017.03.30