首頁 > php框架 > Laravel > 主體

laravel的視圖功能詳解

齐天大圣
發布: 2021-02-19 09:08:18
原創
2369 人瀏覽過

傳統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(&#39;v1&#39;)) {
    //
}
登入後複製

向視圖傳遞資料

#一般視圖中使用純html的情況時非常少了,經常需要向視圖傳遞參數。在laravel中,有幾種方法可以向視圖傳遞參數。可以在view函數中的第二個參數中傳遞一個關聯數組,這樣視圖就可以拿個該資料了,如下:

return view(&#39;v1&#39;, [&#39;name&#39; => &#39;laravel&#39;, &#39;act&#39; => &#39;study&#39;]);
登入後複製

在視圖中使用參數需要使用{{$key}}

<p>{{$act}} {{$name}}</p>
登入後複製

也可以使用with方法來傳遞參數,該方法支援連貫運算

return view(&#39;v1&#39;)
    ->with([&#39;name&#39; => &#39;laravel&#39;, &#39;act&#39; => &#39;study&#39;])
    ->with(&#39;title&#39;, &#39;php.cn&#39;);
登入後複製

所有視圖共享資料

在多個視圖內共享資料是常見的需求,可以在app/Providers/appServiceProvider中設定;

public function boot()
{
    //
    view()->share(&#39;key&#39;, &#39;val&#39;);
}
登入後複製

視圖合成器與建構器

################### ##視圖合成器與建構器類似php類別中建構函數與析構函數,合成器是在視圖展示之前執行的一段業務邏輯,而建構器則是在視圖渲染完畢後執行的一段業務邏輯。 ######因為用到的不多,所以關於視圖的合成器和建構器這裡就不示範如何操作了。有興趣的童鞋可以自行查詢文件。 ############視圖的編譯檔案############檢視檔是需要編譯的,編譯產生的檔案會保存在storage/framework/views檔案下。預設情況下,視圖檔案是按需編譯的,但編譯檔案不存在或視圖檔案做了修改時,視圖檔案就會被重新編譯。但是,在獲取請求時編譯視圖檔案會有效能影響。因此,laravel提供了一個工具,可以一次編譯所有視圖檔。 ###
php artisan view:cache
登入後複製
###於此向對應的還有刪除所有視圖的編譯檔案指令###
php artisan view:clear
登入後複製
###推薦教學:《######laravel框架######》###

以上是laravel的視圖功能詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!