微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – Laravel 5 Blade自定义指令 – 麻烦传递变量

我正在尝试创建一个Blade指令,它将在我的表行上设置一个类,具体取决于传入的内容.问题是,当我调用它时,变量的值没有被传入 – 我有文字字符串括号之间是.

在我看来:

@row($inspection->inspection_disposition)

在指令中:

 Blade::directive('row', function($data)
    {
        var_dump($data);
           .
           .
           .
     }

我在转储中看到的是:

string(37) “($inspection->inspection_disposition)”

我不应该看到该变量的值吗?这就是我想要的.我在这里错过了什么?

更多信息:

我需要在指令中使用该变量的值,如下所示:

if($data == "hello")
{
   return something
}
elseif($data == "goodbye")
{
   return something else
}

这是一个简化的例子,但希望它有助于说明我需要比较指令中变量的值,然后确定要做什么.也许我需要使用eval()?

解决方法:

Blade指令应该返回一个PHP将解释的字符串,如下所示:

Blade::directive('row', function($data)
{
    return "<?PHP var_dump($data); ?>";
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐