XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.
조회 수 87 댓글 3

https://www.xpressengine.com/qna/22837872#comment

 

php 5.5에서 사이트를 운영했을 때 해당 링크의 댓글에 달린대로 아래 php 용법을 사용하였습니다.

 

{@
    $search = array ("'<script[^>]*?>.*?</script>'si",  // 자바 스크립트 제거
                     "'<[\/\!]*?[^<>]*?>'si",           // HTML 태그 제거
                     "'([\r\n])[\s]+'",                 // 공백 제거
                     "'&(quot|#34);'i",                 // HTML 엔티티 치환
                     "'&(amp|#38);'i",
                     "'&(lt|#60);'i",
                     "'&(gt|#62);'i",
                     "'&(nbsp|#160);'i",
                     "'&(iexcl|#161);'i",
                     "'&(cent|#162);'i",
                     "'&(pound|#163);'i",
                     "'&(copy|#169);'i",
                     "'&#(\d+);'e");                    // php로 실행 
    $replace = array ("",
                      "",
                      "\\1",
                      "\"",
                      "&",
                      "<",
                      ">",
                      " ",
                      chr(161),
                      chr(162),
                      chr(163),
                      chr(169),
                      "chr(\\1)"); 
    $text_len = preg_replace($search, $replace, $oDocument->variables['content']);
}  
{mb_strlen(preg_replace("/(&([a-zA-Z]+)\;)|([\s\n\r]+)/","",$text_len), "UTF-8");}

 

php 7로 이전한 이후로는 위 php가 작동하지 않는 걸로 보면 아무래도 상위 버전으로 올라가면서 용도가 사라진 용법이 사용된 것 같은데 구체적으로 어떤 부분을 만져야 하는지 모르겠네요. 찾아보니 preg_replace도 mb_strlen도 php 7에서 다 쓰이고요. 위의 소스가 php 7에서도 돌아가도록 수정할 수 있으면 좋겠는데... 많이 어려울까요?

  • ?
    @제은일행 2016.08.15 21:13:49
    정규식에서 e 플래그는 제거되었어요. preg_replace_callback으로 대체하시면 돼요.
  • ?
    SimpleCode 2016.08.15 22:06:21
    preg_replace_callback으로 바꾸면 되는데, XE 템플릿 문법 때문에 깔끔하게 바꾸진 못할 것 같네요.
    PHP로 callback 함수를 정의해놓고 가져다 써야할 거에요.
  • profile
    Novelic 2016.08.16 19:40:59
    제 실력이 부족해서 이해는 못 하겠지만... 댓글 감사합니다.

List of Articles
번호 분류 제목 최종 글
공지 질문/답변 답변을 확실히 받기위한 질문자 지침서 20  
2620 질문/답변 본문 내용에 이미지들을 슬라이드로 만들어주는 모듈같은거 있을까요? 8 2016.08.18 수정 Overachiever
2619 질문/답변 스케치북 쓰기 버튼 문의드립니다. 11 2016.08.17 수정 아스타
2618 질문/답변 위젯이 글쓸때마다 계속 밀립니다. 11 file 2016.08.16 수정 아즈냥
2617 질문/답변 회원 삼진아웃제 모듈 있나요? 3 file 2016.08.16 수정 XE러버
2616 질문/답변 비밀번호나 아이디를 잃어버린 회원 있는 경우 2 2016.08.16 수정 Novelic
2615 질문/답변 reCAPTCHA 2.0 애드온 사용시 버그같은데 한번봐주시겠어요? file 2016.08.16 작성 스마일
2614 질문/답변 reCAPTCHA 2.0 애드온 구매해서 적용했는데 잘못된 요청이라고 뜹니다 1 file 2016.08.16 수정 스마일
2613 질문/답변 글쓰기 버튼을 누르면 글은 등록되지만 페이지가 글 목록으로 돌아가지 않습니다. 3 2016.08.16 수정 빱빱
2612 질문/답변 xe 모바일 자동로그인 1 2016.08.16 수정 아스타
2611 질문/답변 플랫모바일 삭제하고 싶은데 어딘지 질문합니다 1 file 2016.08.15 수정 AliceTaylor
» 질문/답변 다음 php 용법이 php 7에서는 사라진 용법인가요? 3 2016.08.16 수정 Novelic
2609 질문/답변 게시판 삭제가 안됩니다..도와주세요!! 2 2016.08.16 수정 XE러버
2608 질문/답변 윈도우 / 리눅스 IIS / NGINX 고민 11 2016.08.21 수정 XE러버
2607 질문/답변 심플스트랩 레이아웃에서 로고 이미지 위치가 벗어나는 문제에 대해 질문드립니다. 8 file 2016.08.15 수정 윈컴이
2606 질문/답변 스케치북 게시판 스킨 모바일에서 글쓸때 랙생기시는분 있으신가요? 2 2016.08.16 수정 스마일
2605 질문/답변 콘텐츠 위젯 스킨 (웹툰형식) 수정 질문드립니다. 7 file 2016.08.16 수정 아즈냥
2604 질문/답변 댓글에 추천기능만 포인트를 사용할 수 있게 할 수 있을까요? 2016.08.15 작성 바인등
2603 질문/답변 글을 쓸 때 사용자가 특정회원 이상만 볼수 있게 설정이 가능할까요? 4 2016.08.15 수정 바인등
2602 질문/답변 이런식으로 게시판을 꾸미려면 어떻게 해야하나요 .. ? 4 file 2016.08.15 수정 아즈냥
2601 질문/답변 글 삭제시 포인트 감소 이후, 휴지통 비우기시 다시한번 포인트감소 하는 문제 2016.08.14 작성 xelover
Board Pagination Prev 1 ... 36 37 38 39 40 41 42 43 44 45 ... 171 Next
/ 171
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...