laravel render() 方法有啥用?

Posted

技术标签:

【中文标题】laravel render() 方法有啥用?【英文标题】:what is laravel render() method for?laravel render() 方法有什么用? 【发布时间】:2016-10-12 20:53:36 【问题描述】:

我还没有处理渲染方法!! 是刀片模板吗? 我必须动态传递blade.php文件中的动态数据。

【问题讨论】:

转到:laravel.com/docs - 在搜索字段中搜索“render”,您将得到答案。 Laravel 的文档非常丰富,所以你应该先检查那里。 需要知道您在什么情况下调用render 方法,或者在什么情况下。 在此处发布问题之前,请尝试花一点时间查看文档,这将是值得您花时间的,也不会浪费您的时间然后在这里发布您的问题..! :D @MagnusEriksson 感谢您的提示。你是我在这个世界上见过的最天才的人。非常感谢。我在 Laravel 文档上找到了很多详细信息。 【参考方案1】:

您可以通过传递 动态值以字符串形式获取php刀片文件

这样

刀片

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

控制器

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

O/P

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

【讨论】:

【参考方案2】:

Render(),当应用于视图时,将生成相应的原始html并将结果存储在变量中。

我使用渲染的典型原因是:

将页面转换为 pdf 时(例如,使用 dompdf,将其传递给 loadhtml()),将 HTML 内容返回给 ajax 调用

【讨论】:

我正在尝试将 $view->render() 发送到 pdf。问题是我有 【参考方案3】:

鉴于您已使用 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 通常会为您处理这个问题,即必要时调用渲染或将对象用作字符串。

例如,Blade 的 @include('viewname') 指令将加载视图文件并在后台调用渲染方法。

当您想要获取编译后的视图以执行一些后续操作时,您可以自己使用它。有时,如果视图本身导致异常并且在 PHP 中解释,我会显式调用渲染而不是字符串

致命错误:方法 a::__toString() 不得在第 12 行的 /index.php 中抛出异常

在上述情况下调用 render() 会给出更有用的错误消息。

【讨论】:

以上是关于laravel render() 方法有啥用?的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript“绑定”方法有啥用?

有啥用!登录一些红宝石方法[重复]

NSUserDefaults:+resetStandardUserDefaults 方法有啥用?如何提供“系统设置”?

Task.RunSynchronously 有啥用?

Alamofire 的 .responseString 方法有啥用?

在实现的类中调用接口方法有啥用? [复制]