Mercurial > hg > isophonics-drupal-site
view vendor/consolidation/output-formatters/src/Formatters/TsvFormatter.php @ 9:1fc0ff908d1f
Add another data file
author | Chris Cannam |
---|---|
date | Mon, 05 Feb 2018 12:34:32 +0000 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Consolidation\OutputFormatters\Formatters; use Consolidation\OutputFormatters\Validate\ValidDataTypesInterface; use Consolidation\OutputFormatters\Options\FormatterOptions; use Consolidation\OutputFormatters\Transformations\TableTransformation; use Consolidation\OutputFormatters\Exception\IncompatibleDataException; use Symfony\Component\Console\Output\OutputInterface; /** * Tab-separated value formatters * * Display the provided structured data in a tab-separated list. Output * escaping is much lighter, since there is no allowance for altering * the delimiter. */ class TsvFormatter extends CsvFormatter { protected function getDefaultFormatterOptions() { return [ FormatterOptions::INCLUDE_FIELD_LABELS => false, ]; } protected function writeOneLine(OutputInterface $output, $data, $options) { $output->writeln($this->tsvEscape($data)); } protected function tsvEscape($data) { return implode("\t", array_map( function ($item) { return str_replace(["\t", "\n"], ['\t', '\n'], $item); }, $data )); } }