2025-05-25
comment.php
수정 전 (342 Line)
} else if (preg_match("/^((\[\[|\<\<)Comment(\([^\)]*\))?(\]\]|>>)/m",$body)) {
수정 후 (342 Line)
} else if (preg_match("/^((\[\[|\<\<)Comment(\([^)]*\))?(\]\]|>>))/m", $body)) {
수정된 부분:
원래 패턴: (\(
^\)*\))?
수정된 패턴: (\(
^)*\))?
^\)*를
^)*로 변경하여 닫는 괄호 )를 명확히 매칭하도록 했습니다.
이 변경은
PHP5의 PCRE 엔진에서 더 안정적으로 작동합니다.
^)*는 닫는 괄호를 제외한 모든 문자를 0개 이상 매칭하며, 괄호가 올바르게 닫히도록 보장합니다.
변경 이유:
(
^\)*)는 이스케이프된 괄호 \)를 포함하며,
PHP5에서 복잡한 입력에 대해 파싱 오류를 일으킬 수 있습니다.
^)*는 더 명확하고 간단한 패턴으로,
PHP5의 구형 PCRE 엔진에서도 안정적으로 작동합니다.