在 Laravel 的控制器中,您可以使用 with 方法将数据传递到视图中。with 方法接受一个关联数组,其中键是变量名,值是要传递的值。以下是如何在控制器中传递数据到 @include@yield 指令的示例代码:

class MyController extends Controller
{
    public function myAction()
    {
        // 传递数据到 @include 指令中
        $dataForInclude = ['foo' => 'bar'];
        $viewWithInclude = view('myview')->with('dataForInclude', $dataForInclude);

        // 传递数据到 @yield 指令中
        $dataForYield = ['baz' => 'qux'];
        $viewWithYield = view('myview')->with('dataForYield', $dataForYield);

        // 将两个视图合并后返回
        return view('master')->with('content', $viewWithInclude . $viewWithYield);
    }
}

在上面的代码中,我们首先使用 with 方法将一个数组传递到 @include 指令中,并将其存储在 $dataForInclude 变量中。然后,我们创建一个视图 $viewWithInclude,它使用 myview 模板,并将 $dataForInclude 传递给它。

接下来,我们将另一个数组 $dataForYield 传递给了另一个视图 $viewWithYield 中,该视图使用了 myview 模板中的 @yield 指令。

最后,我们将两个视图组合起来,并将它们存储在一个名为 $content 的变量中,然后将它们传递给名为 master 的母板视图中,以生成最终的输出。

请注意,我们在控制器中使用 . 运算符将两个视图组合在一起。这是因为视图对象实现了 PHP 的魔术方法 __toString(),因此可以像字符串一样使用。

聲明:本站所有文章,如無特殊說明或標註,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。