最近遇到了一种情况,因此在将其返回浏览器之前,检索Laravel 5中的PHP刀片模板的渲染内容特别有用。我希望以一个字符串的形式访问HTML视图,我可以进一步操纵自己,然后返回到浏览器。
我们跳进来,说我们在Laravel的PHP刀片模板生活在这里resources/views/sample.blade.php,内容是由以下组成:
1 2 3 | <div> <p>This is {{$name}}.</p></div> |
我们有一个简单的路由app/Http/routes.php,它调用了一个控制器的方法:
1 | Route::get('/whoami', 'SampleController@getName'); |
在我们的controller(app/Http/Controllers/SampleController.php)中,我们render在返回的视图中调用所有重要的方法:
1 2 3 4 五 6 7 8 9 10 11 12 13 14 | <?phpnamespace App\Http\Controllers;use App\Http\Controllers\Controller;class SampleController extends Controller{ public function getName() { $contents = view('sample', ['name' => 'Code Chewing'])->render(); // do some other manipulation? return $contents; }} |
该render方法来自于View该类vendor/laravel/framework/src/Illuminate/View/View.php。
您现在有机会以字符串形式访问填充的模板,然后将其移交到浏览器。