拉拉维尔 4 刀片@include变量

2022-08-30 14:49:06

我试图用Laravel刀片,但问题是它无法通过变量。下面是我的示例代码:include

file_include.刀片.php

<?php
  $myvar = "some text";

主刀片.php

@include('file_include')
{{$myvar}}

当我运行该文件时,它返回错误“未定义的变量:myvar”。那么,如何将变量从包含文件传递到主文件呢?

谢谢。


答案 1

为什么要将其从包含传递到调用模板?如果在调用模板中需要它,请在此处创建它,然后将其传递到包含的模板中,如下所示:

@include('view.name', array('some'=>'data'))

以上来自 http://laravel.com/docs/templates 的代码片段


答案 2

不幸的是,Laravel Blade引擎不支持你所期望的!但是一点传统的方式,你可以做到这一点!

解决方案 1 - 无Laravel Blade Engine

第一步:

file_include.blade.php

file_include.php

步骤 b:

主刀片.php

<?php 
     include('app/views/file_include.php')
?>
{{$myvar}}

解决方案 2Laravel Blade Engine

routes.php

$data = array(
'data1'         => "one",
'data2'         => "two",
);

View::share('data', $data); 

从$data访问阵列,如下所示Any View

{{ $data['data1'] }}

输出

one

推荐