HTML 태그를 일반 텍스트로 표시하는 방법


211

내 웹 사이트에 HTML이 허용되는 입력 양식이 있으며 HTML 태그 사용에 대한 지침을 추가하려고합니다. 나는 텍스트를 원한다

<strong>Look just like this line - so then know how to type it</strong>

그러나 지금까지 내가 얻는 모든 것 :

이 줄과 똑같이 보이십시오. 그러면 입력 방법을 알아 두십시오.

사람들이 입력 할 내용을 알 수 있도록 태그를 표시하려면 어떻게해야합니까?

답변:


296

교체 <&lt;>함께 &gt;.


6
기술적으로 <를 & lt; 대부분의 브라우저에서 인식 할 수 있지만> & gt; 좋은 습관입니다
cwallenpoole

8
htmlspecialchars ()를 언급하지 않은 경우 @Darm -1입니다. 정당한 사유가 있다면 저를 시정 해주십시오 :)
Ronen Ness

7
질문의 텍스트가 PHP에 의해 생성된다면, htmlspecialchars () 는이 답변이 제안하는 것을 수행합니다. 보다 작거나 큰 부호 (및 기타)를 HTML 엔티티로 대체하십시오 . 그러나 질문이 명시되어 있지 않으므로이 일반적인 답변은 모든 PHP 관련 답변의 상위 집합입니다. 그리고 질문은 실제로 HTML에 관한 것입니다.
처리

다른 의견과 달리이 답변은 100 % 절약합니다. 여기서 내가 찾은 답변 중 일부는 php를 사용하고 echo "<? // like this?>"; 그러나 그것은 여전히 ​​보이지 않는 데 전혀 도움이되지 않았습니다. 반면 에이 답변은 총 17 문자를 저장하고 @handle은 투표 한 포인트를 갖습니다.
ailia

235

PHP에서 htmlspecialchars () 함수를 사용하여 <및 을 탈출하십시오 >.

htmlspecialchars('<strong>something</strong>')

55

많은 사람들이 말했듯이, htmlentities()트릭을 할 것입니다 ...하지만 똥처럼 보일 것입니다.

로모그래퍼을 마무리 <pre>태그와 당신은 당신의 들여 쓰기를 보존 할 수 있습니다.

echo '<pre>';
echo htmlspecialchars($YOUR_HTML);
echo '</pre>';

36

을 사용해야합니다 htmlspecialchars. 아래와 같이 문자를 대체합니다.

  • '&'(앰퍼샌드)가됩니다. &amp;
  • &quot;ENT_NOQUOTES를 설정하지 않으면 ' "'(큰 따옴표)가 됩니다.
  • " '"(작은 따옴표)는 &#039;ENT_QUOTES가 설정된 경우에만됩니다.
  • '<'(보다 작음) &lt;
  • '>'(보다 큼)이됩니다. &gt;

13

htmlspecialchars ()를 사용할 수 있습니다

<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

6

<>s 를 인코딩하면됩니다 .

&lt;strong&gt;Look just like this line - so then know how to type it&lt;/strong&gt;

5

브라우저 내에 HTML 태그를 표시하려면 <xmp> 및 </ xmp> 태그로 출력을 둘러싸십시오.


4
<xmp>는 더 이상 사용되지 않으며, 더 이상 사용되지 않습니다. 사용하지 마십시오.
Muhammad Abdul-Rahim

W3C에서 빠른 Google 검색을 수행하면 HTML 3.2 이전 버전에서 사전 형식화 된 텍스트를 표시하기 위해 XMP가 도입 된 것으로 나타났습니다. W3C가 XMP 태그를 더 이상 사용하지 않을 때는 PRE 태그를 선호하는 대안으로 사용하는 것이 좋습니다. 업데이트 : w3.org/TR/REC-html32#xmp , w3.org/MarkUp/html-spec/html-spec_5.html#SEC5.5.2.1 공유 수정 추적 플래그
kophygiddie

3

브라우저에 에코 할 때 htmlentities를 사용할 수 있습니다. 그러면 html이 해석하지 않고 태그가 표시됩니다.

여기를 참조하십시오 http://uk3.php.net/manual/en/function.htmlentities.php

예:

 echo htmlentities("<strong>Look just like this line - so then know how to type it</strong>"); 

산출:

<strong>Look just like this line - so then know how to type it</strong>


0

다른 방법이 있습니다 ...

header('Content-Type: text/plain; charset=utf-8');

이것은 전체 페이지를 일반 텍스트로 제공합니다 ... htmlspecialchars가 더 좋습니다 ...

도움이 되었기를 바랍니다...


0

기본 JavaScript 접근 방식-

('<strong>Look just like ...</strong>').replace(/</ig, '&lt;').replace(/>/ig, '&gt;');

즐겨!


1
이 게시물에는 JavaScript가 태그되어 있지 않습니다.
isherwood

1
감사합니다. 나에게 유용합니다.
Khang Dinh Hoang
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.