2016-06-12 484 views
-2

我沒有處理渲染方法呢!
是否適用於刀片模板?
我必須動態地在blade.php文件中傳遞動態數據。什麼是laravel render()方法?

+0

轉到:https://laravel.com/docs/ - 搜索 「渲染」,在搜索字段,你會得到你的答案。 Laravel的文檔相當廣泛,所以你應該先查看。 –

+0

需要知道你在調用'render'方法,或者在什麼情況下。 – lagbox

+0

請儘量花一點時間在發佈問題之前查看文檔,這將是值得的,同時也不會浪費您的時間,然後在此處發佈您的問題..然後..! :D –

回答

2

鑑於您使用Blade標記了該問題,我假設您的意思是在Laravel的View類中呈現。

Illuminate\View\View::render()返回視圖的字符串內容。它也用於類'__toString()方法中,該方法允許您回顯View對象。

// example.blade.php 
Hello, World! 

// SomeController.php 
$view = view('example'); 
echo $view->render(); // Hello, World! 
echo $view; // Hello, World! 

Laravel通常會爲您處理這個問題,即,調用在需要時呈現或使用該對象作爲字符串。

刀片的@include('viewname')指令將加載視圖文件並在幕後調用render方法。

當您想讓編譯視圖執行一些後續操作時,您可以自己使用它。偶爾我呼籲給予明確,而不是字符串,如果視圖本身引起的異常和PHP解釋

Fatal error: Method a::__toString() must not throw an exception in /index.php on line 12

調用render()在上述情況下給出了一個更爲有用的錯誤消息。

5

Render()當應用於視圖時,將生成相應的原始html並將結果存儲在變量中。爲此我使用的渲染

典型的原因是:

當轉換爲PDF頁面(使用DOMPDF前,通過這個進loadhtml()),返回HTML內容AJAX調用

0

你可以讓PHP刀片文件與傳遞動態值在形式

喜歡這張 刀片

<link rel="apple-touch-icon" sizes="60x60" href="{{$url}}/assets/images/favicon/apple-icon-60x60.png"> 

控制器

$html = view('User::html-file',['url'=>'https://stackoverflow.com'])->render(); 

O/P

<link rel="apple-touch-icon" sizes="60x60" href="https://stackoverflow.com/assets/images/favicon/apple-icon-60x60.png">\r\n