我想创建一个Blade指令,它将在我的表行上设置一个类,具体取决于传入的内容。问题是,当我调用它时,变量的值没有被传入 - 我在括号之间的文字字符串是。Laravel 5刀片自定义指令 - 麻烦传递变量
笔者认为:
@row($inspection->inspection_disposition)
在指令:
Blade::directive('row', function($data)
{
var_dump($data);
.
.
.
}
我垃圾堆里看到的是:
字符串(37)“($查阅─> inspection_disposition)“
我不应该看到该变量的值吗?这就是我想要的。我在这里错过了什么?
更多信息:
我需要使用该变量的值的指令,像这样:
if($data == "hello")
{
return something
}
elseif($data == "goodbye")
{
return something else
}
这是一个简单的例子,但我希望这将有助于说明我需要比较指令中变量的值,然后确定要执行的操作。也许我需要使用eval()?
我一直在试图使用eval(),但我不认为这是正确的......为什么不做到这一点将值传递给指令? – Kenny
我正在努力解决同样的问题,我只是无法将评估后的字符串或变量传递给我自定义的Blade指令。它的设计看起来像只在“返回”之后才被评估。虽然'eval()'总是危险的做法。 –