苗条框架:D.R.Y

时间:2013-04-25 01:09:59

标签: php frameworks slim

我使用以下代码来使用路由,但我将为不同的路由重复相同的代码。

问题:避免重复的最佳方法是什么?我尝试过使用方法getParameters,但这不起作用,因为当我返回参数时,我需要将它们设置为变量,这会使代码变得多余。或许我看错了方法。

我正在尝试使用“DRY”(不要重复自己)。有人可能会更改参数名称,因此这很有帮助。

$app->get( '/blog', function() use ($app){ //same code as below });


$app->get( '/link', function() use ($app){
$link = new linksApi();

//call question api


$username = $app->request()->params('username');
$company = $app->request()->params('company'); // tags
$follower = $app->request()->params('follower');    
$max = $app->request()->params('max');    
$date = $app->request()->params('date');    
$date_value = $app->request()->params('date_value');    
$oldest = $app->request()->params('oldest');    
$counts = $app->request()->params('counts');    
$sorts = $app->request()->params('sorts');    
$counts = $app->request()->params('counts');    
$format = $app->request()->params('format');    

});

1 个答案:

答案 0 :(得分:0)

如果你担心性能,使用它是不明智的,但在这里:

$routes = array(
    'username',
    'company',
    'follower',
    'max'
    // ...
);

foreach($routes as $r) {
    ${$r} = $app->request()->params($r);
}