public function dumpRow(array $row = array()) { $flat = $this->convertRowAsFlat($row); if (!$this->hasHeader) { $this->csvWriter->writeRow(array_keys($flat)); $this->hasHeader = true; } $this->csvWriter->writeRow($flat); }
public function execute() { $writer = new CsvWriter($this->getCsvWriterOptions()); $writer->createTempStream(); if ($this->getHeader()) { $writer->writeRow($this->getHeader()); } $results = $this->query->find(); foreach ($results as $result) { $writer->writeRow($this->getRow($result)); } $this->content = $writer->getFileContent(); $writer->close(); return $this; }
/** * @expectedException \InvalidArgumentException * @expectedExceptionMessage Could not open file "" for writing. */ public function testWritingLineNoFilename() { $this->writer->writeRow(array('nom', 'prénom', 'age')); }
$watch->start('csv_generation'); $header = array('lastname', 'firstname', 'phone number', 'email', 'birthday', 'address', 'zipcode', 'city', 'points'); $csvWriter1->writeRow($header); for ($i = 0; $i < $maxLines; $i++) { $lastname = $faker->lastName; $firstname = $faker->firstName; $row = array($lastname, $firstname, $faker->phoneNumber, strtolower($firstname . '.' . $lastname) . '@' . $faker->domainName, $faker->dateTimeThisCentury->format('Y-m-d'), $faker->streetAddress, $faker->postcode, $faker->city, $faker->randomNumber()); $csvWriter1->writeRow($row); } $csvWriter1->close(); $eventGeneration = $watch->stop('csv_generation'); echo 'Converting the CSV' . "\n\n"; $file2 = $dir . '/bench_result' . $maxLines . '.csv'; $watch->start('csv_convert'); $csvReader = new CsvReader(array('delimiter' => ';', 'enclosure' => '"', 'encoding' => 'CP1252', 'eol' => "\r\n", 'escape' => "\\")); $csvReader->open($file1); $csvWriter2 = new CsvWriter(array('delimiter' => ',', 'enclosure' => '"', 'encoding' => 'UTF-8', 'eol' => "\n", 'escape' => "\\")); $csvWriter2->open($file2); foreach ($csvReader as $row) { $csvWriter2->writeRow($row); } $csvWriter2->close(); $csvReader->close(); $eventConverting = $watch->stop('csv_convert'); echo 'Results' . "\n"; echo 'CSV Generation' . "\n\n"; echo 'duration = ' . $eventGeneration->getDuration() . ' ms' . "\n"; echo 'memory usage = ' . $eventGeneration->getMemory() / (1024 * 1024) . ' Mb (' . $eventConverting->getMemory() . ' b)' . "\n\n"; echo 'CSV Parsing/Converting' . "\n\n"; echo 'duration = ' . $eventConverting->getDuration() . ' ms' . "\n"; echo 'memory usage = ' . $eventConverting->getMemory() / (1024 * 1024) . ' Mb (' . $eventConverting->getMemory() . ' b)' . "\n";