3

我的问题很简单。我要做的就是用 HTML 编写实际的 PHP 代码,而不执行它。例如,我想写

<div id = "code"><?php
echo 'Bla Bla Bla';
?></div>

我不想执行这个 PHP。我想通过某种方式转义<?php标签(我不想删除它们),在 html 文档上写下 PHP 代码。

不幸的是,当我通过这样做将它回显到浏览器时:

<div id = "code"><?php echo '<?php
echo "Bla Bla Bla";
?>' ?></div>

我也尝试将代码放入变量中,即使这样也没有奏效。

我的 PHP 代码被浏览器注释掉了。我可以View Page Source在 chrome 的选项中看到它,但浏览器认为它是评论。

请提供我的问题的解决方案。

提前致谢。

PS:我正在使用 CodeMirror 使用“application/x-httpd-php”输出嵌入式 PHP/HTML 代码。

编辑#1

我可以将 lt 和 rt 用于标签,但实际上我不能,因为 CodeMirror 仅在找到<?标签时才开始突出显示代码。

4

7 回答 7

7

使用 <?PHP echo "test"; 编码你的 php 标签 ?>

于 2013-11-08T12:13:13.603 回答
3

使用 htmlspecialchars() 转义您的代码:

<div id="code">
    <?php echo htmlspecialchars("<?php echo 'Bla Bla Bla' ?>") ?>
</div>
于 2013-11-08T12:17:41.963 回答
1

看看这里:http ://www.php.net/manual/en/function.htmlentities.php

<div id = "code"><?php echo htmlentities('<?php

echo "Bla Bla Bla";
?>'); ?></div>
于 2013-11-08T12:15:57.947 回答
1

试试这个

<div id = "code">
    <?php echo htmlentities('<?php echo "Bla Bla Bla"; ?>'); ?>
</div>
于 2013-11-08T12:16:50.467 回答
0

尝试使用 htmlspecialchars

htmlspecialchars()
于 2013-11-08T12:20:32.290 回答
0

如果我正确理解了您的问题,那么您可以通过以下方式来实现它..

      <div class="test"><?php $a='<?php hii echo "hey there"?>';?></div>
于 2013-11-08T12:22:02.263 回答
0

解决方案 1:您的解决方案可能是不命名文件.php......改为尝试.txt。这样,Web 服务器不会将文件传递给 PHP 解析器。

解决方案 2:其他解决方案是从另一个 php 脚本中读取文件,该脚本与具有所需代码的文件file()结合使用。htmlspecialchars()

解决方案 3:如果您已经在变量中拥有代码并且它以您可以在“源视图”中看到代码的方式输出,那么您只需使用即可htmlspecialchars()

于 2013-11-08T12:41:28.787 回答