Skip to content
Snippets Groups Projects

Feature/implementation

Merged Krzysztof Dyszczyk requested to merge feature/implementation into master
1 file
+ 50
0
Compare changes
  • Side-by-side
  • Inline
+ 50
0
<?php
namespace WPDesk\View\Resolver;
use WPDesk\View\Renderer\Renderer;
use WPDesk\View\Resolver\Exception\CanNotResolve;
/**
* Class should resolve name by serching in provided dir. If empty then current dir
*
* @package WPDesk\View\Resolver
*/
class DirResolver implements Resolver
{
/** @var string */
private $dir;
/**
* Base path for templates ie. subdir
*
* @param $template_base_path
*/
public function __construct($dir)
{
$this->dir = $dir;
}
/**
* Resolve name to full path
*
* @param string $name
* @param Renderer|null $renderer
*
* @return string
*/
public function resolve($name, Renderer $renderer = null)
{
$dir = rtrim($this->dir, '/');
$fullName = $dir . '/' . $name . '.php';
if (file_exists($fullName)) {
return $fullName;
}
throw new CanNotResolve("Cannot resolve {$name}");
}
}
Loading