/** * Tag disponível apenas no PHPUnit 3.4, ainda não disponível no pacote * Pear PHPUnit-beta3. Note o uso do '@' para supressão das mensagens de * erro. * * @outputBuffering enabled */ public function testStreamFileExtensionSupported() { $this->configVfs(); $filename = 'tmp/example.pdf'; $filepath = vfsStream::url($filename); fopen($filepath, 'a+'); $directory = (array) vfsStream::url(vfsStreamWrapper::getRoot()->getName()); $stub = $this->getMock('Mimetype'); $stub->expects($this->once())->method('getType')->will($this->returnValue('application/pdf')); $fileStream = new FileStream($stub, $directory); $fileStream->setFilepath($filepath); @$fileStream->streamFile(); }
* Faz stream de arquivo para o buffer do navegador. * * @author Eriksen Costa Paixão <*****@*****.**> * @license http://creativecommons.org/licenses/GPL/2.0/legalcode.pt CC GNU GPL * @package Core * @since Arquivo disponível desde a versão 1.1.0 * @version $Id$ */ require_once 'Utils/Mimetype.class.php'; require_once 'Utils/FileStream.class.php'; // Pega o nome do arquivo (caminho completo) $filename = isset($_GET['filename']) ? $_GET['filename'] : NULL; // Diretórios públicos (permitidos) para stream de arquivo. $defaultDirectories = array('tmp', 'pdf'); // Classe Mimetype $mimetype = new Mimetype(); // Classe FileStream $fileStream = new FileStream($mimetype, $defaultDirectories); try { $fileStream->setFilepath($filename); } catch (Exception $e) { print $e->getMessage(); exit; } try { $fileStream->streamFile(); } catch (Exception $e) { print $e->getMessage(); exit; } unlink($filename);