MVC. Вот ответ на ваш вопрос. На простом примере не Контроллер->layout... , а Контроллер -> модель ->layout.
Что-бы понятней было:
<?php
function controller($param1,$param2)
{
$model=model($param1,$param2);
view($model);
}
function model($a,$b)
{
return $a+$b;
}
function view($view)
{
echo "".$view."";
}
controller(1,2);
?>
Только вместо функций используют классы