hedera-web/web/util.php

45 lines
927 B
PHP
Raw Normal View History

2016-09-24 14:32:31 +00:00
<?php
namespace Vn\Web;
class Util
{
/**
* Reads a file and writes it to the output buffer.
*
* @param string file The file path
* @param boolean useXsendfile Wether to use the apache module Xsendfile
2016-12-20 09:32:17 +00:00
*/
2016-09-24 14:32:31 +00:00
static function printFile ($file, $useXsendfile = FALSE)
{
if (!file_exists ($file))
{
http_response_code (404);
return;
}
$finfo = new \finfo (FILEINFO_MIME_TYPE);
$mimeType = $finfo->file ($file);
if ($useXsendfile)
{
header ("X-Sendfile: $file");
header ("Content-Type: $mimeType");
}
else
{
header ('Content-Description: File Transfer');
header ("Content-Type: $mimeType");
header ('Content-Disposition: attachment; filename="'. basename ($file) .'"');
header ('Expires: 0');
header ('Cache-Control: must-revalidate');
header ('Pragma: public');
header ('Content-Length: '. filesize ($file));
set_time_limit (0);
readfile ($file);
}
}
}