【问题标题】:In php how to echo " <?php " to the screen?在 php 中如何将“<?php”回显到屏幕上?
【发布时间】:2021-01-28 05:10:12
【问题描述】:

在 php 脚本中,如何在屏幕上回显“

我最接近的是:

$array = array ('<','?','p','h','p',);
$count = count($array);
for ($i = 0; $i < $count; $i++) {
echo "$array[$i] ";
}

这给了我想要的输出但是 w 空格 "

我知道有一种简单的方法可以实现这一点……但需要一点手。

我基本上需要等效于 stackoverflow 代码块,因为任何将“

谢谢!

【问题讨论】:

  • 您的 echo 语句在引号内有一个空格,这就是它在输出中显示空格的原因。但我不确定你为什么认为这比将它作为字符串回显更复杂?
  • 我很抱歉。它是一个 php 脚本,所以你不能像你所说的那样回显它。 PHP 本身不会使用 echo、print_r 或我尝试过的大多数正常方式输出它...

标签: php output


【解决方案1】:

为了在浏览器中显示对 PHP 或 HTML 有特殊含义的字符,必须用htmlspecalchars 屏蔽它们。

echo htmlspecialchars('<?php',ENT_QUOTES,'UTF-8');

【讨论】:

    【解决方案2】:

    只需将其作为字符串回显。

    <?php
    echo "<?php";
    

    &lt;?php在PHP代码中没有特殊含义,只是用来从字面输出文本切换到解析PHP代码。

    【讨论】:

    • &lt;?= "&lt;?php"; ?&gt;
    • 这些似乎都不起作用。这是在一个 php 脚本中,当浏览器看到它时,它似乎将其视为 php 块的开始......所以它不会物理显示在屏幕上......
    【解决方案3】:

    在回显 $array[$i] 后删除空格。比如 echo "$array[$i]";

    【讨论】:

    • 也做不到。 “$array[$i]”的结果在增量器之后没有空格是“
    • 这很接近 echo "
    【解决方案4】:

    使用这个:

    echo "&lt;?php"
    

    在这里,我们使用 HTML 实体作为 &amp;lt; 符号,即 &amp;lt;。为此,PHP 解释器不会将 &amp;lt; 符号解释为标记。

    【讨论】:

      猜你喜欢
      • 2013-02-11
      • 2017-12-23
      • 2011-09-27
      • 2014-12-23
      • 2019-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-21
      相关资源
      最近更新 更多