首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止php在预标记之间呈现/执行

防止php在预标记之间呈现/执行
EN

Stack Overflow用户
提问于 2013-03-14 09:35:00
回答 4查看 1.8K关注 0票数 3

我使用预标签在我的网站上显示代码,这些代码片段包含html和php。

到目前为止,我已经使用Jquery将代码中的html转换为纯文本,但是php标记仍在执行中。

用于将pre的html内容转换为纯文本的代码:

代码语言:javascript
复制
$(document).ready(function(){
    $("pre").text($("pre").html()); 
});

我用它做的一个例子是:

代码语言:javascript
复制
<pre>
    <p>paragraph Content</p>
    <h1>html code</h1>
    <?php echo "this is php example code"; ?>
</pre>

前2行在浏览器中完美地显示标记和所有内容,但是第三行执行php标记,只呈现这个php示例代码。有人能帮我吗?这样我就可以在代码片段中显示php标记了吗?

此外,如果有人知道更好的解决方案,将html/css和php作为代码片段呈现在您的网站上,这将是非常有帮助的。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-03-14 09:40:39

您的方法的问题是,在浏览器处理文件之后,您试图影响呈现。当您查看页面的源代码时,您会注意到,其中实际上没有“这个php示例代码”,因为服务器解析了代码的这一部分并执行了它,这只会导致您放入echo命令中的字符串。

您需要在将输出发送到客户端之前处理它,并获取<pre></pre>的所有出现情况,以便用各自的<实体替换它们之间的所有<>

看看这个问题,找出解析HTML的最佳方法,并获得适当的元素以进行修改。

票数 2
EN

Stack Overflow用户

发布于 2013-03-14 09:37:58

您应该转义<>符号--分别用它们的&lt;&gt;替换它们;)

如果您想要对HTML实体进行全面和全面的转换,请尝试在http://centricle.com/tools/html-entities上转换它们。

通常,在代码块中将所有符号转换为各自的HTML实体是很好的做法。

票数 2
EN

Stack Overflow用户

发布于 2013-03-14 09:38:01

尝试将<?php ... ?>替换为

&lt;? .... &gt;

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15405586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档