$remarks = preg_replace('/'.$searchText.'/i', '<span class="searchText">$0</span>', $remarks);
나는 위의 코드 줄을 사용하여 사용자가 입력 한 검색 텍스트를 강조 표시합니다. 검색 문자열에 슬래시 (/) 문자가 포함 된 경우를 제외하고는 99 %의 시간 동안 작동합니다. 그들이 그렇게하면 PHP는 "알 수없는 수정 자"오류를 반환합니다. preg_replace 줄 앞에 코드 줄을 추가하여 백 슬래시 문자로 슬래시를 이스케이프 처리했습니다.PHP preg_replace with slash character
$searchText = str_replace('/', '\/', $searchText);
그건 도움이되지 않습니다. 이 작업을 어떻게 수행합니까?
'당신의 추가 라인 대신 preg_replace''의 str_replace'은 추가 슬래시를 제거하려면? 추가 행을 사용하여 /를 이스케이프하지 않고 /로 대체하려고 시도 했습니까? – Ryan
가능한 중복 [preg_replace 오류] (http://stackoverflow.com/questions/4712444/preg-replace-error) – mario
preg_replace 대신 여분의 기능이 필요하다고 생각하지 않기 때문에 preg_replace 대신 str_replace를 사용했습니다. /를 아무 것도 입력하지 않으면 올바른 텍스트가 강조 표시되지 않습니다. – user39653