preg_replace 의 e 변경자 사용에 대한 질문
글쓴이: 랜덤여신 / 작성시간: 수, 2004/06/09 - 7:54오후
preg_replace 의 e 변경자 사용에 대한 질문
preg_replace 에서 e 변경자를 사용할 때에,
두번째 인자의 \\1 이 그대로 치환되면서 문제점이 생기는 것 같습니다.
$str = '[""]'; //$str = preg_replace('#\\[(.+)\\]#e', '(unset)print(str_replace(\'\\"\', \'"\', \'\\1\'))', $str); $str = preg_replace('#\\[(.+)\\]#e', '(unset)print(\'\\1\')', $str);
이렇게 하면, 원하는 출력인 "" 이 나오지 않고 \"\" 이 나옵니다.
그래서 임시방편으로 str_replace 로 \" 를 " 로 바꾸도록 해 놓긴 했습니다만...
근본적인 대책은 없나요?
Forums:
댓글 달기