使用 jquery 将 PHP 脚本打印为纯文本


Printing PHP script as plain text using jquery

我正在尝试创建一个预览HTML部门,其中我面临着挑战。当我尝试从文本区域获取代码并将其打印在HTML中时,我看不到PHP代码。这是我的代码,HTML 将打印文本区域中的代码的位置

<pre id='pques'></pre> 

jQuery代码将从textarea获取值并放入上面的HTML漂亮的打印区域:

jQuery(document).ready(function($) {
    setInterval(function(){
        $("#pques").html($("#eques").val());
    } 
});

文本区域内的值,id=eques

以下 php 代码的输出是什么? <div class="code"><?php $num = 1; $num1 = 2; print $num . "+". $num1 ; ?> </div>

有人好心地帮助我实现这一目标。我想要一些类似于堆栈溢出问题预览功能的功能。

谢谢。

最简单的方法是将 PHP 打开和结束标记中的尖括号转义为 HTML 实体:

<?php .. ?>变得&lt;?php ... ?&gt; - PHP 不会将其视为服务器代码并会忽略它,但浏览器会将&lt;显示为<&gt;显示为>。这样你就不需要JavaScript来做,你可以直接打印到页面上。我建议始终对在您的网站上输入的任何PHP代码进行HTML编码,并将其与实体而不是可执行代码一起存储。

当你使用 jquery 时,你可以按照这里描述来实现这一点

正如@kallum-tanton已经指出的那样,这将摆脱括号。