В некоторых роутерах есть необходимость определять переменную $args['projectFolder']=...
Хочу вместо копипасты определить функцию "для каждого роутера", где будут определяться переменные, которые используются более чем в одном роутере. Как её реализовать?
Если непонятно объяснил, то вот на примере кода
До:
$app->get('/[upload]', function ($request, $response, $args) {
$args['projectFolder']=$this->settings['projectFolder'];
return $this->view->render($response, 'upload.html', $args);
})->setName('main');
$app->get('/show_file/{id}', function ($request, $response, $args){
$args['projectFolder']=$this->settings['projectFolder'];
......
$args['fileUri']= $fileUri;
return $this->view->render($response, 'show_file.html', $args);
})->setName('show_file');
После:
UnknownSuperfunction(){
$args['projectFolder']=$this->settings['projectFolder'];
});
$app->get('/[upload]', function ($request, $response, $args) {
return $this->view->render($response, 'upload.html', $args);
})->setName('main');
$app->get('/show_file/{id}', function ($request, $response, $args){
......
$args['fileUri']= $fileUri;
return $this->view->render($response, 'show_file.html', $args);
})->setName('show_file');