我需要 HTML 变量中的特殊字符
I need HTML special characters in variable
我有一个 PHP 变量,我需要使用富文本格式(如粗体),但我的代码无法实现。
我该怎么做?
例如:
我的文字:
<td>{{ $item->item_category->name ?? "Eliminaste esta Categoría" }}</td>
但我需要:
<td>{{ $item->item_category->name ?? "<b>Eliminaste esta Categoría</b>" }}</td>
我尝试了最新的代码,但它不起作用。
保持潜在危险的数据值转义,然后将您添加的文本(已知文本)作为简单明了的文本取消转义 html:
@if(isset($item->item_category->name))
<td>{{ $item->item_category->name }}</td>
@else
<td><b>Eliminaste esta Categoría</b></td>
@endif
我个人建议遵循 ,但如果你真的想按照你现在的方式去做,你可以使用:
{!! $item->item_category->name ?? "<b>Eliminaste esta Categoría</b>" !!}
详见 documentation。
解释一下两者的区别:
{{ $var }}
运行 echo htmlspecialchars($var);
做几件事,包括将 <b>
转换为 <b>
.
运行 替代方案 {!! $var !!}
只是 echo $var
.
您可能(应该)使用第一个选项的原因是清理用户提交的数据以防止潜在的安全风险。对于您的情况,因为它是您编写的硬编码字符串,所以这应该不是问题。
我有一个 PHP 变量,我需要使用富文本格式(如粗体),但我的代码无法实现。
我该怎么做?
例如:
我的文字:
<td>{{ $item->item_category->name ?? "Eliminaste esta Categoría" }}</td>
但我需要:
<td>{{ $item->item_category->name ?? "<b>Eliminaste esta Categoría</b>" }}</td>
我尝试了最新的代码,但它不起作用。
保持潜在危险的数据值转义,然后将您添加的文本(已知文本)作为简单明了的文本取消转义 html:
@if(isset($item->item_category->name))
<td>{{ $item->item_category->name }}</td>
@else
<td><b>Eliminaste esta Categoría</b></td>
@endif
我个人建议遵循
{!! $item->item_category->name ?? "<b>Eliminaste esta Categoría</b>" !!}
详见 documentation。
解释一下两者的区别:
{{ $var }}
运行 echo htmlspecialchars($var);
做几件事,包括将 <b>
转换为 <b>
.
运行 替代方案 {!! $var !!}
只是 echo $var
.
您可能(应该)使用第一个选项的原因是清理用户提交的数据以防止潜在的安全风险。对于您的情况,因为它是您编写的硬编码字符串,所以这应该不是问题。