40 lines
773 B
PHP
40 lines
773 B
PHP
<?php
|
|
|
|
// Класс отображения
|
|
// CompositeView !! Composite pattern
|
|
|
|
class View
|
|
{
|
|
protected $document;
|
|
protected $values;
|
|
|
|
public function __construct ($document)
|
|
{
|
|
$this->document = $document;
|
|
}
|
|
|
|
public function set($key, $value)
|
|
{
|
|
$this->values[$key] = $value;
|
|
}
|
|
|
|
public function __set($key, $value)
|
|
{
|
|
$this->set($key, $value);
|
|
}
|
|
|
|
public function execute()
|
|
{
|
|
$result = $this->values;
|
|
return self::getTemplateContent ($this->document, $result);
|
|
}
|
|
|
|
static function getTemplateContent($document, $result)
|
|
{
|
|
ob_start ();
|
|
include ($document);
|
|
$result = ob_get_contents ();
|
|
ob_clean ();
|
|
return $result;
|
|
}
|
|
}
|