傳統MVC模式,分為模型、控制器和視圖。視圖是用來存放html檔案的,laravel的視圖檔案存放在resources/views目錄下。下面來建立一個影片
建立視圖
Route::get('/v1', function () { return view('v1'); });
建立resources/views/v1.blade.php文件,內容如下:
<html> <body> <h1> hello world </h1> </body> </html>
子目錄檢視
對於子目錄的視圖,要使用.運算元來指定。例如,resources/views/home/index.blade.php,那麼則需要
return view(home.index);
#判斷視圖是否存在
##有時候需要判斷一個視圖是否存在,需要使用exists方法。如下:if (view()->exists('v1')) { // }
向視圖傳遞資料
#一般視圖中使用純html的情況時非常少了,經常需要向視圖傳遞參數。在laravel中,有幾種方法可以向視圖傳遞參數。可以在view函數中的第二個參數中傳遞一個關聯數組,這樣視圖就可以拿個該資料了,如下:return view('v1', ['name' => 'laravel', 'act' => 'study']);在視圖中使用參數需要使用{{$key}}
<p>{{$act}} {{$name}}</p>也可以使用with方法來傳遞參數,該方法支援連貫運算
return view('v1') ->with(['name' => 'laravel', 'act' => 'study']) ->with('title', 'php.cn');
所有視圖共享資料
在多個視圖內共享資料是常見的需求,可以在app/Providers/appServiceProvider中設定;public function boot() { // view()->share('key', 'val'); }
視圖合成器與建構器
################### ##視圖合成器與建構器類似php類別中建構函數與析構函數,合成器是在視圖展示之前執行的一段業務邏輯,而建構器則是在視圖渲染完畢後執行的一段業務邏輯。 ######因為用到的不多,所以關於視圖的合成器和建構器這裡就不示範如何操作了。有興趣的童鞋可以自行查詢文件。 ############視圖的編譯檔案############檢視檔是需要編譯的,編譯產生的檔案會保存在storage/framework/views檔案下。預設情況下,視圖檔案是按需編譯的,但編譯檔案不存在或視圖檔案做了修改時,視圖檔案就會被重新編譯。但是,在獲取請求時編譯視圖檔案會有效能影響。因此,laravel提供了一個工具,可以一次編譯所有視圖檔。 ###
php artisan view:cache###於此向對應的還有刪除所有視圖的編譯檔案指令###
php artisan view:clear###推薦教學:《######laravel框架######》###
以上是laravel的視圖功能詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!