;', '', $s); }; $colCount = count($header); $colWidths = []; for ($col = 0; $col < $colCount; $col++) { $colWidths[$col] = strlen($stripMeta($header[$col])); foreach ($rows as $row) { $colWidths[$col] = max($colWidths[$col], strlen($stripMeta($row[$col]))); } } $mkRow = function ($row) use ($colWidths, $stripMeta) { $buf = ''; foreach ($row as $col => $cell) { $buf .= '| '; $buf .= $cell; $buf .= str_repeat(' ', $colWidths[$col] - strlen($stripMeta($cell))); $buf .= ' '; } $buf .= '|'; return $buf; }; $bold = function ($c) { return "$c"; }; $hrPattern = '+'; for ($col = 0; $col < $colCount; $col++) { $hrPattern .= str_repeat('-', 2 + $colWidths[$col]) . '+'; } $buf = ''; $buf .= $hrPattern . "\n"; $buf .= $mkRow(array_map($bold, $header)) . "\n"; $buf .= $hrPattern . "\n"; foreach ($rows as $row) { $buf .= $mkRow($row) . "\n"; } $buf .= $hrPattern . "\n"; return $buf; } } __halt_compiler();----SIGNATURE:----hdmXbhjSjLPOeeFZ+H6q63zlWc6gLyaCv+qks/nD267vRn8R1v75iSJwl/SN1ubsS77Vvn5ZAiKar2e8NEfPZdcgm4QqxBpZgIqQHscBpVfpTYAcRlFh+JCubgjJtGVuFafhH++gLnAHLtuxC+1GRtVda/fWMHt/ACpeYIFS6Huc7bdXPhzFGSKq2qPTJ2CCR8rNrlU/O0KA5VgBt2IcTXwoImyKokDSyhgNnCyBhCudXMe/MuFaQ2tctkuiJGereVG6msCRFoUotCWh0vmMZfHp2GS6c8HOYoKiZmLgg2igyx3LjybNcPoq6SStZwvsjgmPb9h2ps+mocrwrEzplPgD2A9VSR4KhTI23zJWNHP8mJX0gIzO4Zf+Y7TlJRwOshE8D6TOXMzcCHccgHfuMhduhNpAePDpJWgnqKsRABtku18+qMLJBj+kQZ0R7xjx67XNZvX2kJMZ30ztq0WqFvo7B2VRPj8FQXIgwzmboxLS1f5r5DJ/jWJGYOrehzu1X1KVyqMNcZL18sEp5ynWeP4IGpeogc3n3hhFGmNFYLlNstA/M8GFa2vzIOOXqKLFGRwrJ/2FQh+bI/+ScRS47ZiSgW6yg0xIxkM11tF2YD3Ydaq0marfRX39y9iwNdx5pwsBx88K+JF5rcfCNJbDEuDZIe3VGWZdc4YTlFJfyCY=----ATTACHMENT:----Mzk1MzUxNDkyMDUwMDU4IDM3MjQ1MDk5MTI0ODYzNzIgNTYyOTQzMTg5MDM3NTk3NQ==