laravel file_get_contents 一条路由没有响应

laravel file_get_contents of a route get no response

我有一条路线:

Route::group(array('prefix' => 'playlist'), function()
{
   Route::get('raw/{id}', array('as'=>'rawPlaylist', 'uses'=>'PlaylistsController@raw'));
});

当我打开 URL:

http://localhost:8000/playlist/raw/1

一切正常,页面将加载并显示视图。

在控制器中我得到 URL:

$url = URL::route('rawPlaylist', 1);

问题: 我想读取视图并将整个视图存储到一个变量中:

$html = file_get_contents($url);

echo $url是http://localhost:8000/playlist/raw/1这个没错

但这不起作用。我没有收到任何回应,php artisan 发球中断。 为什么?这里有什么问题?

您不能在 laravel 路由上使用 file_get_contents,因为 laravel 路由不是视图文件的实际路径。

您可以看出,因为您的视图未存储在文件夹 de/playlist/raw 中,它存储在 app/views/pathtoyourrawview

我还没有尝试过,但我假设您可以使用以下方法将视图的代码捕获到一个变量中:

$html = View::make('rawPlaylist')->render();

基本上,不是返回 View::make 结果,而是将其写入变量。