最近遇到了一种情况,因此在将其返回浏览器之前,检索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 | <?php namespace 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
。
您现在有机会以字符串形式访问填充的模板,然后将其移交到浏览器。