我正在将一个由其他人编码的网站从Laravel 5.2更新为(最终)为5.7。
目前,我在刀片文件中遇到此类代码的问题:
{{-- */ $hidden = 'hidden' /* --}}
这将创建一个在文件本身中使用的变量,如下所示:
<div class="col-xs-2 {{$hidden}}" id="person1div">
</div>
这在Laravel 5.2中似乎可以正常工作,但是在5.3中我收到错误消息:
Undefined variable: hidden
我可以将代码更改为
<?php $hidden = 'hidden' ?>
但是问题在于,有很多这样的变量,以各种方式使用。
需要注意的是,这些变量处于循环中,我想这就是为什么原始开发人员在重置并重新填充它们时会使用它们的原因。
是否有更正确的方法来填充变量?
答案 0 :(得分:2)
您可以选择和替换如下所示的语法。
您可以在刀片文件中使用以下值设置变量:
@php $hello = "Hello World!"; @endphp
并在刀片文件上打印变量,
{{$hello}}
答案 1 :(得分:0)
好的,在我发布此问题后,就解决了这个问题(这在SO中经常发生)。
我做了一个全局查找,替换并更改了
的实例{{-- */
到
{!!
还有
/* --}}
到
!!}
所以不是
{{-- */ $hidden = 'hidden' /* --}}
我有:
{!! $hidden = 'hidden' !!}
这可以解决问题。
感谢您的回答-希望这对其他人有帮助。
EDIT ***********************************
尽管我认为这对我来说是行得通的,但事实证明,我不断遇到诸如“数组到字符串转换”之类的错误
所以我要继续@ himanshu-upadhyay的回答