Вход Регистрация
Файл: library/XenForo/FileOutput.php
Строк: 53
<?php

/**
 * This is a helper class to output files via the MVC architecture. It allows outputting
 * of large data via readfile(). Note that the file can be read as a string if needed and
 * the file contents will be cached.
 */
class XenForo_FileOutput
{
    protected 
$_fileName '';
    protected 
$_contents null;

    public function 
__construct($fileName)
    {
        if (!
file_exists($fileName))
        {
            throw new 
XenForo_Exception('File does not exist');
        }
        if (!
is_readable($fileName))
        {
            throw new 
XenForo_Exception('File is not readable');
        }

        
$this->_fileName $fileName;
    }

    public function 
__toString()
    {
        return 
$this->getContents();
    }

    public function 
output()
    {
        if (
$this->_contents === null)
        {
            
readfile($this->_fileName);
        }
        else
        {
            echo 
$this->_contents;
        }
    }

    public function 
getFileName()
    {
        return 
$this->_fileName;
    }

    public function 
getContents()
    {
        if (
$this->_contents === null)
        {
            
$this->_contents file_get_contents($this->_fileName);
        }

        return 
$this->_contents;
    }
}
Онлайн: 0
Реклама