猿问

如何在 laravel 的刀片页面中编写 php?

我这样写,但没有得到输出。


@php

  @if(isset($value['0']['cmsg'])) 

    $cmsg = json_decode($value['0']['cmsg']);

  @endif

  @if(isset($value['0']['cmsgerr'])) 

    $cmsgerr = json_decode($value['0']['cmsgerr']);

  @endif

@endphp


FFIVE
浏览 123回答 3
3回答

慕妹3146593

在里面@php @endphp你应该只使用 php 代码,而不是 blade 代码。@php  if(isset($value['0']['cmsg'])) {    $cmsg = json_decode($value['0']['cmsg']);  }  if(isset($value['0']['cmsgerr'])) {    $cmsgerr = json_decode($value['0']['cmsgerr']);  }@endphp

犯罪嫌疑人X

当你在 laravel blade 中打开 php 时,你不能再在 PHP 中使用 blade 语法。所以你的代码应该是这样的:@php  if(isset($value['0']['cmsg'])) {    $cmsg = json_decode($value['0']['cmsg']);  }  if(isset($value['0']['cmsgerr'])) {    $cmsgerr = json_decode($value['0']['cmsgerr']);  }@endphp

红糖糍粑

好吧,当您使用 @php blade 指令时,该块将被定义在Illuminate\View\Compilers\BladeCompiler. 因此,您在@php .... @endphp块中编写的任何内容都应该是您想要的 PHP 代码。没有必要在 @php 块中编写其他指令,如 @if、@foreach 等,这实际上是错误的。我希望你理解这个想法并且你现在可以轻松地修复你的代码。
随时随地看视频慕课网APP
我要回答