@include如何在laravel中工作?

时间:2016-07-26 22:45:53

标签: php laravel

我正在尝试在laravel中编写自定义指令。但是,它只返回我的刀片部分的路径作为字符串,而不是像@include那样的实际html。

AttributeError: Copy instance has no attribute 'l'

我希望自定义指令返回路径中找到的html; authenticated / partials / header2'但是,似乎刀片不能识别路径是我的php中的路径。我的自定义指令存在于AppServiceProvider.php文件btw中。有谁知道@include如何运作得非常好,所以他们可以解释为什么我的道路没有得到认可。

2 个答案:

答案 0 :(得分:1)

很酷的问题,它需要一些挖掘,但你可以很容易地复制laravel的功能:

Blade::directive('customInclude', function($partial){
    if(Config::get('constants.ORG_ID') === 'organizationId'){
        return "<?php echo view($partial); ?>";
    }
});

答案 1 :(得分:0)

谢谢Chris的回答。这是对的。但是,如果要将特定变量传递给视图。请执行以下操作

    Blade::directive('customInclude', function($partial){
        if(Config::get('constants.ORG_ID') === 'organizationId'){
            return "<?php echo view($partial,compact('variable1','variable2','variable3')); ?>";
        }
    });

整个包括变量通过compact()让我失望。