티스토리 뷰
게시물 내용에서 html 태그 날리려
strip_tags() 함수를 썼더니
<오전 10시> 와 같이 angle brackets 로 감싸져 있는 문자열도 함께 제거되는 문제가 발생하여
복잡한 대안을 만들었음.
<?php
// 원본 문장
$str = <<<EOF
<오전 10시>
블라<u>블라</u>블라블라<strong>블라</strong>블라블라블라
EOF;
// 함수 적용해보기
$result = getPlainText($str);
// 결과 출력
echo($str);
/**
* @brief plain text 반환 함수
* @description
*   angle brackets 문장 보존
*/
function getPlainText($str){
    // Remove js, css block
    $str = preg_replace('/<script|style\b[^>]*>(.*)<\/script|style>/is', "", $str);
    // Remove html comment
    $str = preg_replace('/<!--(.|\s)*?-->/', '', $str);
    // angle brackets 한글 문장 임시 치환
    $str = preg_replace('/<([^<a-zA-Z]+)>/i', '<$1>', $str);
    $str = strip_tags($str);
    // 임시 치환 했던 angle brackets 복원
    $str = str_replace('<', '<', $str);
    $str = str_replace('>', '>', $str);
    // 줄바꿈 문자 정리
    $str = trim($str);
	
    return $str;
}
'웹프로그래밍 > PHP' 카테고리의 다른 글
| Laravel 4.2 queue + redis + sqlite 구성 셋팅 (2) | 2017.08.30 | 
|---|---|
| Laravel 쿼리 빌더로 self join 표현법 (0) | 2017.08.08 | 
| macOS 용 docker 상의 php Xdebug 와 PHPStrom 연동 방법 (0) | 2016.11.15 | 
| PHP 에서 UTC 날짜 KST 로 변환 (0) | 2016.11.09 | 
| 내용에 youtube embed 코드 검사 정규식 (0) | 2016.10.23 | 
					댓글
						
					
					
					
				
			
								최근에 올라온 글
								
							
							
								
									최근에 달린 댓글
									
							
							
								- Total
- Today
- Yesterday
									TAG
									
							
							
							- PHP
- Prototype
- javascript
- 한글
- Debug
- 워드프레스
- JQuery
- laravel
- mssql
- IOS
- Linux
- macos
- CSS
- JSON
- ASP
- iis
- nodejs
- iphone
- Android
- classic asp
- Mac
- Docker
- nginx
- git
- API
- sencha touch
- centos
- 안드로이드
- IE
- Wordpress
| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | 
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 
| 26 | 27 | 28 | 29 | 30 | 31 | 
									글 보관함