[英]php echo html without quotes and whitespace
我试图回显自动生成的html表单元素,但是页面始终将html代码显示为文本。 当我通过Chrome检查输出时,它会显示生成的带有引号和空格的表单输入。 这是我尝试过的结果:
这是代码生成整个表格
<form action="<?php echo url_for('/survey/submit?id='.$Survey->getId()) ?>" method="post">
<ul>
<?php foreach($Questions as $Question): ?>
<li><?php echo $Question->questionHtml() ?></li>
<?php endforeach; ?>
</ul>
</form>
这是一个示例结果:
"<li>
<input class="survey" size="40" type="text" name="Sample Survey[input_1]" id="Sample_Survey_input_1" /> </li>"
我也尝试了htmlentities。
echo htmlentities($Question->questionHtml())
"
<input class="survey" size="40" type="text" name="Sample Survey[input_1]" id="Sample_Survey_input_1" /> "
问题是我无法在页面上显示这些生成的表单元素,而只能显示它们的纯文本格式。
如果显示代码,则需要解码html实体
echo html_entity_decode( $Question->questionHtml() );
http://www.php.net/manual/zh/function.html-entity-decode.php
但
这不是必须要做的。 QuestionHtml()函数应仅将表单值转换为它们的实体,而不是整个表单。
如果$Question->questionHtml()
回显了正确的HTML,那么您所需要做的就是使用trim()
删除空白。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.