首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 4 Blade @include变量

Laravel 4 Blade @include变量
EN

Stack Overflow用户
提问于 2014-01-17 17:35:02
回答 6查看 32.4K关注 0票数 29

我试着用Laravel blade做include,但问题是它不能传递变量。下面是我的示例代码:

file_include.blade.php

代码语言:javascript
复制
<?php
  $myvar = "some text";

main.blade.php

代码语言:javascript
复制
@include('file_include')
{{$myvar}}

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

谢谢。

EN

回答 6

Stack Overflow用户

发布于 2014-03-18 03:47:16

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

代码语言:javascript
复制
@include('view.name', array('some'=>'data'))

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

票数 54
EN

Stack Overflow用户

发布于 2015-02-28 03:05:11

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

解决方案1 -不带Laravel Blade Engine

步骤a:

从…

代码语言:javascript
复制
file_include.blade.php

代码语言:javascript
复制
file_include.php

步骤b:

main.blade.php

代码语言:javascript
复制
<?php 
     include('app/views/file_include.php')
?>
{{$myvar}}

采用Laravel Blade Engine解决方案2

routes.php

代码语言:javascript
复制
$data = array(
'data1'         => "one",
'data2'         => "two",
);

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

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

代码语言:javascript
复制
{{ $data['data1'] }}

输出

代码语言:javascript
复制
one
票数 9
EN

Stack Overflow用户

发布于 2014-01-17 18:17:02

Blade是Laravel的模板引擎。因此,尝试从控制器传递该值,或者您可以出于测试目的在routes.php中定义它。

@include用于包含子视图。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21182399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档