【问题标题】:PHP cannot print my string properlyPHP 无法正确打印我的字符串
【发布时间】:2023-03-26 05:26:01
【问题描述】:

所以我有以下代码:

$tag = 'script';
$r = '#(<'.$tag.'.*?>).*?(</'.$tag.'>)#';
echo $r;

但是当它回显时,它只是回显:#().*?()#

甚至连“脚本”都没有被回显……请注意小于等于号等不存在……

我做错了什么?

【问题讨论】:

  • 我不太确定。 codepad.org/vCUmQoA2
  • 看看这个:writecodeonline.com/php
  • 那我建议你看看@Itay Moav 的回答...
  • 虽然这是一个菜鸟问题,但我不明白为什么这是一个坏问题。如果它不适合该网站,请投票关闭它(曾经投票过的人)。
  • @rockerest 世界上大多数人都是混蛋和白痴,为什么你会期望它在任何其他社区中有所不同。我自己很多次都是个混蛋。这更容易。

标签: php string printing echo


【解决方案1】:

查看源代码来了解原因。 可能是:

#(<script.*?>).*?(</script>)#';

每个浏览器将显示为

#().*?()#

因为它隐藏了解析视图中的任何 XML 标记,即隐藏了 &lt;script.*?&gt;&lt;/script&gt; 但是,可以在未解析的版本中看到->查看源代码

【讨论】:

  • 或者在Firebug中,右键点击可疑文本,选择Inspect Element并查看脚本标签。
【解决方案2】:

如果您打印到 HTML 或网络浏览器,它将忽略它不理解或通常不会显示的标签,例如 &lt;script&gt;。例如,请参阅this jsfiddle

【讨论】:

    【解决方案3】:

    因为它打印

    #(<script.*?>).*?(</script>)
    

    它对浏览器是不可见的,但是查看源代码,它应该在那里:D

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      相关资源
      最近更新 更多