我在刀片模板中有一个函数调用,它需要一个字符串作为第一个参数。由于某些原因,Laravel正在解析字符串并添加一个三元,因为有一个'?‘符号,后面紧跟单词“or”。
下面是一个例子:
{{ $eloquentObject->function('Lorem? ipsum or dolor') }}当blade解析字符串时,它会将其替换为:
<?php echo isset($creation->editableHTML('Lorem? ipsum) ? $creation->editableHTML('Lorem? ipsum : dolor '); ?>谁来告诉我如何防止这种胡言乱语。
发布于 2014-06-04 19:56:02
触发函数替换的不是?,而是or。这不是真正的bug,更多的是不兼容: Blade语句在PHP语句之前被解析,而{{ STRING or STRING }}语句被blade视为三元。
最简单的方法是:
https://stackoverflow.com/questions/24036504
复制相似问题