如何在php中访问超出范围的变量?

时间:2015-08-04 22:38:23

标签: php scope counter

我在循环中有一个函数:

for ($i=1; $i<=10; $i++) {
    Route::get('/projects/oop/'.$i, function(){
        return View::make('projects.oop'. $i); <--- This line give me a problem.
    });
};

我一直在:

  

我没有定义。

如何修复它以便我可以访问我的$i变量?

1 个答案:

答案 0 :(得分:2)

这不是在laravel中处理动态路径路径的正确方法。

你需要做的是将所有讨厌的for循环一起删除,然后你需要将动态值作为第3个参数传递给此路径。

Route::get('/projects/oop/{id}, 'ProjectsController@oop');

现在,您需要转到您的controllers目录并创建一个名为:

的控制器
class ProjectsController extends BaseController {
    function oop($id){
        return View::make('projects.oop.'.$id);
    }
}

现在你的路由会正确地将请求传递给ProjectsController类,然后它将iopplement oop函数并将{id}从Route传递给函数作为参数。