4 * This file is part of the Symfony package.
6 * (c) Fabien Potencier <fabien@symfony.com>
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
12 namespace Symfony\Component\Translation\Dumper
;
14 use Symfony\Component\Translation\MessageCatalogue
;
17 * CsvFileDumper generates a csv formatted string representation of a message catalogue.
21 class CsvFileDumper
extends FileDumper
23 private $delimiter = ';';
24 private $enclosure = '"';
29 public function format(MessageCatalogue
$messages, $domain = 'messages')
31 $handle = fopen('php://memory', 'rb+');
33 foreach ($messages->all($domain) as $source => $target) {
34 fputcsv($handle, array($source, $target), $this->delimiter
, $this->enclosure
);
38 $output = stream_get_contents($handle);
45 * Sets the delimiter and escape character for CSV.
47 * @param string $delimiter delimiter character
48 * @param string $enclosure enclosure character
50 public function setCsvControl($delimiter = ';', $enclosure = '"')
52 $this->delimiter
= $delimiter;
53 $this->enclosure
= $enclosure;
59 protected function getExtension()