首页 > 解决方案 > 如何将数组变量传递给 laravel 提供者指令

问题描述

我想将数组变量从刀片模板传递给提供者指令函数。数组变量在控制器中创建。

控制器代码

$fields = array(
    0 => array(
        'row' => '',
        'elementArray' => array(
            'formType' => array('type' => 'hidden', 'value' => '', 'name' => 'formType'),
            'id' => array('type' => 'hidden', 'value' => '', 'name' => 'id')
        )
    )
);

return view('welcome',compact('fields'));

刀片文件代码:

@createNewForm($fields)

指令功能

Blade::directive('createNewForm', function ($fields=array()) {
    return $this->createform($fields);
});

输出显示:它将变量显示为字符串,但不显示变量的完整值 $fields

解决方案是什么?

标签: phplaravel

解决方案


试试这个
你正在刀片中构建一个宏。你需要返回一个字符串

Blade::directive('createNewForm', function ($this, $fields = array()) {
    return "<?php $this->createform($fields); ?>";
});

推荐阅读