28 lines
674 B
PHP
28 lines
674 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\SharedKernel\Controllers;
|
|
|
|
use App\SharedKernel\StringConverter;
|
|
|
|
trait ModuleViewRender
|
|
{
|
|
public function renderView(array $vars = []): void
|
|
{
|
|
$appDir = str_replace(
|
|
StringConverter::classNameToDir(ModuleViewRender::class),
|
|
'',
|
|
__DIR__
|
|
);
|
|
|
|
$classNameExploded = explode('\\', get_called_class());
|
|
$viewName = strtolower(str_replace('Controller', '', end($classNameExploded)));
|
|
|
|
echo $this->view->render(
|
|
$appDir . StringConverter::classNameToDir(get_called_class()) . '/../Views/' . $viewName,
|
|
$vars
|
|
);
|
|
}
|
|
}
|