Mercurial > hg > isophonics-drupal-site
view vendor/consolidation/annotated-command/src/Parser/Internal/CsvUtils.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
line wrap: on
line source
<?php namespace Consolidation\AnnotatedCommand\Parser\Internal; /** * Methods to convert to / from a csv string. */ class CsvUtils { /** * Ensure that the provided data is a string. * * @param string|array $data The data to convert to a string. * @return string */ public static function toString($data) { if (is_array($data)) { return static::csvEscape($data); } return $data; } /** * Convert a string to a csv. */ public static function csvEscape(array $data, $delimiter = ',') { $buffer = fopen('php://temp', 'r+'); fputcsv($buffer, $data, $delimiter); rewind($buffer); $csv = fgets($buffer); fclose($buffer); return rtrim($csv); } /** * Return a specific named annotation for this command. * * @param string|array $data The data to convert to an array. * @return array */ public static function toList($data) { if (!is_array($data)) { return str_getcsv($data); } return $data; } }