>  기사  >  백엔드 개발  >  여러 HTML 태그를 유지하는 PHP Strip_tags 메소드

여러 HTML 태그를 유지하는 PHP Strip_tags 메소드

高洛峰
高洛峰원래의
2017-01-03 09:45:261468검색

이 글에서는 여러 HTML 태그를 유지하는 PHP Strip_tags 함수의 방법을 소개합니다. 두 번째 매개변수를 사용하여 삭제할 필요가 없는 태그를 설정할 수 있습니다. 주로 Strip_tags

strip_tags 함수의 두 번째 매개변수와 관련됩니다.

구문
string Strip_tags(string str [, string allowed_tags])
HTML 태그가 제거된 문자열을 반환합니다. 두 번째 매개변수를 사용하여 삭제할 필요가 없는 태그를 설정할 수 있습니다.

사용법:

전제: 현재 이러한 문자열이 있는 경우

$str = "<p>我来自<b><a href=&#39;http://www.php.cn&#39;>PHP中文网</a></b></p>";

1, HTML 태그를 유지하지 않고 코드는 다음과 같습니다.

echo strip_tags($str); 
// 输出:我来自PHP中文网

2. 3499910bf9dac5ae3c52d5ede7383485 태그만 유지하려면 3499910bf9dac5ae3c52d5ede7383485 string_tags의 두 번째 매개변수만 작성하면 됩니다.

echo strip_tags($str, "<a>"); 
// 输出:我来自<a href=&#39;http://www.php.cn&#39;>PHP中文网</a>

3 . e388a4556c0f65e1904146cc1a846bee 및 a4b561c25d9afb9ac8dc4d70affff419... 여러 태그를 유지하려면 여러 태그를 공백으로 구분하고 이를 Strip_tags의 두 번째 매개변수에 작성하세요.

echo strip_tags($str, "<p> <b>"); 
// 输出:<p>我来自<b>PHP中文网</b></p>

PHP를 사용하려면 html 태그를 삭제하려면 의 특정 태그는 어떻습니까?

이를 구현하려면 다음과 같은 코드가 필요합니다.

function strip_selected_tags($text, $tags = array()) {
  $args = func_get_args();
  $text = array_shift($args);
  $tags = func_num_args() > 2 ? array_diff($args, array($text)) : (array) $tags;
  foreach($tags as $tag) {
    if (preg_match_all(&#39;/<&#39;.$tag.
        &#39;[^>]*>([^<]*)</&#39;.$tag.
        &#39;>/iu&#39;, $text, $found)) {
      $text = str_replace($found[0], $found[1], $text);
    }
  }
 
  return preg_replace(&#39;/(<(&#39;.join(&#39;|&#39;, $tags).
    &#39;)( | |.)*/>)/iu&#39;, &#39;&#39;, $text);
}
 
$str = "[url="] 123[/url]";
    echo strip_selected_tags($str, array(&#39;b&#39;));

여러 HTML 태그를 유지하는 PHP Strip_tags 방법과 관련된 추가 기사 비용을 지불하십시오. PHP 중국어 웹사이트에 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.