Laravel 5.3 刀片解码 HTML 特殊字符
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/40607589/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Laravel 5.3 blade decoding HTML Special Characters
提问by Md. Harun Or Rashid
I save some HTML Code in my Database. When I got that data to the blade, CSS not working on.
我在我的数据库中保存了一些 HTML 代码。当我将这些数据发送到刀片时,CSS 无法正常工作。
In the Page Source Code I found that < shows as '& lt;'
在页面源代码中,我发现 < 显示为 '& lt;'
What method have I to use to convert & lt to <
我有什么方法可以将 & lt 转换为 <
Is there anybody to help me?
有人可以帮助我吗?
回答by Laemol
Change your syntax from {{ }}
to {!! !!}
that should do the trick
将您的语法从更改{{ }}
为{!! !!}
应该可以解决问题
回答by Rimon Khan
Try this: html_entity_decode()
尝试这个: html_entity_decode()
{!! html_entity_decode($string, ENT_QUOTES, 'UTF-8') !!}
回答by Lahar Shah
{!! html_entity_decode(nl2br(e($text))) !!}
- The
e
function runshtmlentities
over the given string. nl2br
Inserts HTML line breaks before all newlines in a stringhtml_entity_decode
Convert all HTML entities to their applicable characters
- 该
e
函数htmlentities
在给定的字符串上运行。 nl2br
在字符串中的所有换行符之前插入 HTML 换行符html_entity_decode
将所有 HTML 实体转换为其适用的字符
nl2br(e($text))
and {!! !!}
was ot enough to convert "
to "
nl2br(e($text))
并{!! !!}
不足以转换"
为“
I used html_entity_decode
and then it worked exactly how I wanted. I still think it is too much for one simple thing.
我使用过html_entity_decode
,然后它完全按照我想要的方式工作。我仍然认为这对于一件简单的事情来说太过分了。
回答by Gerard Reches
In order to echo
HTML content as code, not as string, you must use the unescape {!! !!}
syntax in your blade file. But for the issue you are experimenting, you also need to use the html_entity_decode()
PHP function.
为了将echo
HTML 内容作为代码而不是字符串,您必须{!! !!}
在刀片文件中使用 unescape语法。但是对于您正在试验的问题,您还需要使用html_entity_decode()
PHP 函数。
{!! html_entity_decode($str) !!}