php

2020.09.18 09:45

역슬래시 처리... 백슬래시 넣기

  • 관리자 2020.09.18 인기
  • 10,190
    0
php 에서 db 에 자료를 넣을 때
 특수문자 등등 때문에 addslashes() 함수를 쓰고 나중에 stripslashes() 함수를 이용해 처리합니다.
그러나 실제 역슬래시를 입력하려면 문제가 생기게 됩니다.
이때는 약간의 꼼수만 쓰면 해결이 됩니다.

db 에 넣기 전에 역슬래시를 엔티티 문자로 변경합니다.

 // 역슬래시를 ₩ 엔티티로 변환
$subject = str_replace('\', "₩", $subject);
  $content = str_replace('\', "₩", $content);
  $subject = str_replace('\', "₩", $subject);
  $content = str_replace('\', "₩", $content);

그리고 나중에 view 화면단에서 db 에서 꺼내서

// 엔티티를 역슬래시로 변환
$subject = str_replace("₩", "\\", $subject);
  $content = str_replace("₩", "\\", $content);

끝...

p.s
왜 위와 같이 꼼수를 쓰느냐.. escape 함수 쓰면 되는 거 아니냐... 혹은
htmlspecialchars 와 htmlentities 를 쓰면 속편하지 않냐... 그럴 수도 있습니다만..
웹에디터가 들어가면 여러상황이 생길 수 있기 때문입니다.
그리고 역슬래시는 한글폰트에서 원으로 표시, 영문 폰트에서 역슬래시 모양이 출력됩니다.
이점은 참고 하세요.


출처 : https://www.bada-ie.com
  • 공유링크 복사

    댓글목록

    등록된 댓글이 없습니다.