2017 © Pedro Peláez
 

library exporter

Vegas CMF Exporter

image

vegas-cmf/exporter

Vegas CMF Exporter

  • Thursday, August 6, 2015
  • by vegas
  • Repository
  • 8 Watchers
  • 4 Stars
  • 139 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 4 Forks
  • 0 Open issues
  • 6 Versions
  • 0 % Grown

The README.md

Vegas CMF Exporter

Build Status Coverage Status Latest Stable Version Total Downloads, (*1)

Exporter allows user to get table output in one of following ways: - store into file - download file in a browser - raw string buffer, (*2)

Currently, the library supports following formats: - CSV - PDF - XLS (Excel 2007) - XML, (*3)

Installation, (*4)

Set \Vegas\Exporter\Exporter class as a service by adding following snippet into your services directory:, (*5)

use Phalcon\DiInterface;
use Vegas\DI\ServiceProviderInterface;

/**
 * Class ExporterServiceProvider
 */
class ExporterServiceProvider implements ServiceProviderInterface
{
    const SERVICE_NAME = 'exporter';

    /**
     * {@inheritdoc}
     */
    public function register(DiInterface $di)
    {
        $di->set(self::SERVICE_NAME, function() use ($di) {
            $exporter = new \Vegas\Exporter\Exporter;
            return $exporter->setDI($di);
        }, true);
    }

    public function getDependencies()
    {
        return [];
    }
}

Saving usage:, (*6)

$exportData = [
    ["John", "Malkovic", "52"],
    ["Kenny", "Smith", "36"],
    ["Sam", "Stevenson", "18"],
];

$columns = ["Firstname", "Lastname", "age"];

$extraSettings = [  // CSV-only settings, default values below
    'separator'     => ',',
    'lineSeparator' => PHP_EOL,
    'skipHeaders'   => false,   // skip printing headers in first row?
    'quoteFields'   => false    // enclose output fields in ""
];

$config = (new \Vegas\Exporter\ExportSettings)
            ->setFilename('my_export_file')
            ->setOutputDir('/tmp')
            ->setHeaders($columns)
            ->setHeaderKeysAsParams(true)
            ->setData($exportData)
            ->setExtraSettings($extraSettings);

/** @var \Phalcon\DiInterface $di */
$exporter = $di->get('exporter');

$exporter->setConfig($config);
$exporter->saveCsv();

This will store our data in CSV format into file /tmp/my_export_file.csv., (*7)

Downloading usage:, (*8)

$exportData = [
    ["John", "Malkovic", "52"],
    ["Kenny", "Smith", "36"],
    ["Sam", "Stevenson", "18"],
];

$columns = ["Firstname", "Lastname", "age"];

$extraSettings = [  // PDF-only settings, default values below
    'pageOrientation'       => 'Portrait',
    'pageSize'              => 'A4',
    'fontSize'              => 0,
    'fontFamily'            => ''
];

$config = (new \Vegas\Exporter\ExportSettings)
            ->setTemplate('template_name')
            ->setTitle('My first PDF export')
            ->setFilename('my_export_file')
            ->setHeaders($columns)
            ->setData($exportData)
            ->setExtraSettings($extraSettings);

/** @var \Phalcon\DiInterface $di */
$exporter = $di->get('exporter');

$di->get('view')->disable();    // prevent default view rendering
$exporter->setConfig($config);
$exporter->downloadPdf();

This will download a PDF file named my_export_file.pdf in a browser., (*9)

Note that PDF format requires a template_name partial in the modules view directory to render output properly., (*10)

Printing usage:, (*11)

$john = new \stdClass;
$john->Firstname = 'John';
$john->Lastname = 'Malkovic';
$john->age = 52;

$exportData = [
    $john,
    // ...
];

$columns = ["Firstname", "Lastname", "age"];

$extraSettings = [  // XML-only settings, default values below
    'rootName'  => 'root',  // document tree tag name
    'nodeName'  => 'item'   // each node tag name
];

$config = (new \Vegas\Exporter\ExportSettings)
            ->setHeaders($columns)
            ->setHeaderKeysAsParams(false)
            ->setData($exportData)
            ->setExtraSettings($extraSettings);

/** @var \Phalcon\DiInterface $di */
$exporter = $di->get('exporter');

$exporter->setConfig($config);
$result = $exporter->printXml();

This will assign pretty printed XML string to $result. As presented, exporter accepts object array input as well., (*12)

The Versions

06/08 2015

dev-master

9999999-dev

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team

10/03 2015

v1.1-rc0

1.1.0.0-RC

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team

06/03 2015

1.0.x-dev

1.0.9999999.9999999-dev

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team

06/03 2015

v1.0.2

1.0.2.0

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team

25/02 2015

v1.0.1

1.0.1.0

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team

13/08 2014

v1.0.0

1.0.0.0

Vegas CMF Exporter

  Sources   Download

MIT

The Requires

 

The Development Requires

by Amsterdam Standard Vegas Team