Files
DomFramework/outputcsv.php

46 lines
1.2 KiB
PHP

<?php
/** DomFramework
* @package domframework
* @author Dominique Fournier <dominique@fournier38.fr>
* @license BSD
*/
//namespace Domframework;
require_once ("domframework/output.php");
/** Display in CSV the data provided
*/
class outputcsv extends output
{
/** Don't allow to output in CSV if the functions are not available in PHP */
function __construct ()
{
if (!function_exists ("fputcsv"))
throw new Exception ("CSV support not available in PHP !", 500);
}
/** Display in CSV the data provided
@param mixed $data The data to be displayed */
public function out ($data)
{
if (!is_array ($data))
$data = array ($data);
@header("Cache-Control: no-store, no-cache, must-revalidate");
@header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
@header('Last-Modified: '.gmdate ('D, d M Y H:i:s').' GMT');
@header('Cache-Control: post-check=0, pre-check=0', false);
@header('Pragma: no-cache');
@header ("Content-Type: text/csv");
// TODO : return $csv
$out = fopen ('php://output', 'w');
if (! is_array ($data[0]))
$data = array ($data);
foreach ($data as $vals)
fputcsv ($out, $vals);
fclose ($out);
if (!defined ("PHPUNIT"))
exit;
}
}