와 나는 데이터베이스에서 일부 사용자가 제출 한 HTML 코드를 취이 기능을 가지고, 일반 텍스트로 출력 할 수 있습니다. 내 질문에 '깊이'가 부족하다는 것을 알고 있지만 이것이 최선의 방법입니까? 또는 출력 된 서식을 구문 분석 (예 : 자바 스크립트 삽입)하거나 일부 컴퓨터에서 제대로 출력하지 못하는 등의 문제가 있습니까?서식 HTML 코드는 PHP
감사합니다.
잭
편집 : 나는 새로운 (관련) 질문이 : 나는 highlight_string()
를 사용하여 문자열을 강조하고 싶습니다. 그러나 제대로 작동하지 않을 수 있습니다. 나는 라고 생각한다. 나는 왜 그것을 이해하지만, 나는 이것을 어떻게 수정할 수 있는지 모른다.
function Code($code)
{
return "<pre><code>".highlight_string(nl2br(htmlspecialchars($code)))."</code></pre>";
}
여기에서 알 수 있듯이 나는 그것에 대해 highlight_string()
을 사용하고 있습니다. 그러나 출력이 전혀 강조 표시되지 않고 문자 엔터티 (<
, '>'등)로 출력됩니다. 내가 좋아하는 뭔가 함수 순서를 개편하는 경우 :
return "<pre><code>".nl2br(htmlspecialchars(highlight_string($code)))."</code></pre>";
나는 문자 엔터티가 출력되지 않습니다 때, 캐릭터 라인은 여전히 강조되지는 사실을 알게 될 것입니다. 명확히하기 위해, 나는 적용된 텍스트 색상에 영향을 줄 CSS 스타일이 없습니다. 또한, 내 PHP 설정을 확인했습니다 거기에 명확하게 강조 표시 색상이 있습니다.
우수 감사합니다. 질문에 여분의 비트도 추가했습니다. :) – Jack
''pre'' 및'code' 블록 안에 있기 때문에 @Jack'highlight_string()'이 작동하지 않습니다. HTML 서식을 지원하지 않습니다. –
'return "".nl2br (htmlspecialchars (highlight_string ($ code))). "을 읽기 위해 Code() 함수를 변경했습니다." "; - 슬프게도, 여전히 작동하지 않습니다. 나는 또한'highlight_string()'함수의 깊이를 '섞어'시도했다. 특이한 '1'이 출력되고 있습니다. 스크린 샷을보십시오. http://cl.ly/603f491d7402e06125be - 그들은 확실히 데이터베이스 데이터에 없습니다. – Jack