隐藏输入未隐藏在 Laravel blade 模板中

Hidden input isn't hidden in Laravel blade template

我正在尝试隐藏输入并在 blade 模板中设置一些值,但它没有隐藏并且在页面上可见。这是字段

{{ Form::hidden('price', '<?php echo $item['price'] * $item['quantity'];?>') }}

我尝试过不使用 <?php ?> 标签,因为当我阅读 blade 中 {{ }} 中的所有内容时,模板的阅读方式类似于 php.. 所以这个

{{ Form::hidden('price', '$item['price'] * $item['quantity']') }}

抛出错误

'syntax error, unexpected 'price' (T_STRING)'

这样试试

{{ Form::hidden('price', '$item["price"] * $item["quantity"]') }}

引号和双引号可能是解决方案

您的问题是 '$item['price'] * $item['quantity']'

  1. 单引号中有单引号,但没有转义,因此会导致错误
  2. PHP 会将其计算为字符串而不是您想要的表达式。无需将此表达式括在引号中。

因此在 Blade 4 中,您需要:

{{ Form::hidden('price', $item['price'] * $item['quantity']) }}

Blade 仅限版本 5

在Blade 5中,{!! !!}应该用于HTML代码。

{!! Form::hidden('price', $item['price'] * $item['quantity']) !!}