Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel:包含修剪的模板_Php_Laravel_Templates_Laravel Blade - Fatal编程技术网

Php Laravel:包含修剪的模板

Php Laravel:包含修剪的模板,php,laravel,templates,laravel-blade,Php,Laravel,Templates,Laravel Blade,我有一个名为include/data.blade.php的模板文件,该文件以换行符结尾。(这是我不想更改的IDE默认配置) 所述模板以以下方式包含在另一个模板中: # parent blade template <script> let tpl = '@include("include.data")'; </script> 问题是:我能以任何方式修剪包含的模板吗?以下是laravel 5.6+的解决方案 在AppServiceProvider::boot()中注

我有一个名为
include/data.blade.php
的模板文件,该文件以换行符结尾。(这是我不想更改的IDE默认配置)

所述模板以以下方式包含在另一个模板中:

# parent blade template
<script>
    let tpl = '@include("include.data")';
</script>

问题是:我能以任何方式修剪包含的模板吗?

以下是laravel 5.6+的解决方案

  • AppServiceProvider::boot()
    中注册新的
    trim
    刀片指令:

    //注册起始标记
    刀片::指令('trim',函数(){
    返回“”;
    });
    //寄存器结束标记
    刀片::指令('endtrim',函数(){
    返回“”;
    });
    
  • 使用注册指令如下:

    # parent blade template
    <script>
        let tpl = '@trim @include("include.data") @endtrim';
    </script>
    
    #父刀片模板
    让tpl='@trim@include(“include.data”)@endtrim';
    
  • //Register starting tag
    Blade::directive('trim', function() {
        return '<?php ob_start() ?>';
    });
    
    //Register ending tag
    Blade::directive('endtrim', function() {
        return "<?php echo trim(ob_get_clean()); ?>";
    });
    
    # parent blade template
    <script>
        let tpl = '@trim @include("include.data") @endtrim';
    </script>