2017-08-17 37 views
1

obejct方法按照Flight PHP documentation,使用一個對象的方法是使用:傳遞變量對飛行PHP

Flight::route('/some/route', [$object, 'method']); 

,並使用路由參數是通過使用:

Flight::route('/@name/@id', function($name, $id){ 
    echo "hello, $name ($id)!"; 
}); 

我試圖結合兩者如下:

Flight::route('/user/@id', [$object, 'method']); 

但它不起作用。有沒有辦法將參數傳遞給對象方法?

回答

0

如何分配閉包中的變量?

Flight::route('/@name/@id', function($name, $id){ 
    $obj = new Object; // or use a DIC 
    $obj->name = $name; 
    $obj->id = $id; // or assign these in the constructor 
}); 
0

看着Dispatcher.php(方法callFunctioninvokeMethod),你的使用情況應該得到支持。在匿名函數和類方法中應該同樣支持參數...