post형식으로 필드 데이타만 받아오는 게 아니라 html페이지를 통째로 파싱하는 경우인가요?
일단 엔터->br은 nl2br을 써서 엔터를 일괄 변환 가능합니다.
주로 게시판 입력을 받을 땐 이런 식으로 하죠. nl2br(htmlspecialchars($str)).
파싱용으로 나온 코드를 사용하시거나 텍스트에리어쪽 코드가 고정인 경우 혹은 어쨌든 그 원하는 텍스트를 감싸고 있는 태그를 찾아서 익스플로드한 후 안에 있는 내용을 nl2br로 처리해주시면 됩니다.
그리고 당연하지만 유저가 수정한 내용이 있을 경우 인식하지 못합니다. 그런 건 폼을 만들어서 post형식이나 get형식으로 받아오거나 자바스크립트로 처리해야 합니다.
참고로 php는 웹전용으로 개발되는 언어기 때문에 찾아보면 웹개발에 필요할 만한 펑션이나 라이브러리는 엔간해선 다 있습니다.
훔
replaceall \n
검색하면 많이 나와요..
db 입력전에 바꾸어서 넣는게 로직상 나아 보입니다 ㅎ
자바스크립트로도 가능하고 php로도 가능하고str_replace
머 편한대로 처리하세요 ㅎ
post형식으로 필드 데이타만 받아오는 게 아니라
post형식으로 필드 데이타만 받아오는 게 아니라 html페이지를 통째로 파싱하는 경우인가요?
일단 엔터->br은 nl2br을 써서 엔터를 일괄 변환 가능합니다.
주로 게시판 입력을 받을 땐 이런 식으로 하죠. nl2br(htmlspecialchars($str)).
파싱용으로 나온 코드를 사용하시거나 텍스트에리어쪽 코드가 고정인 경우 혹은 어쨌든 그 원하는 텍스트를 감싸고 있는 태그를 찾아서 익스플로드한 후 안에 있는 내용을 nl2br로 처리해주시면 됩니다.
그리고 당연하지만 유저가 수정한 내용이 있을 경우 인식하지 못합니다. 그런 건 폼을 만들어서 post형식이나 get형식으로 받아오거나 자바스크립트로 처리해야 합니다.
참고로 php는 웹전용으로 개발되는 언어기 때문에 찾아보면 웹개발에 필요할 만한 펑션이나 라이브러리는 엔간해선 다 있습니다.
아.. 통째파싱이 아니라 정규표현식을 이용하려합니다.
nl2br 은 전체를 br처리 하는데
제가 하고자 하는건 textarea태그 안에 있는 내용만 br처리를 해야 합니다.
완전 머리가 아프네요.. @.@
preg_replace_callback('~<tex
<?php preg_replace_callback('~]*>(.*?)~s', nl2br을사용하는callback함수 ?>
https://xenosi.de/
감사합니다.
송효진 님 덕분에 해결을 하였습니다.
$pattern1 = array
(
"']*?>'si",
"']*?>'si",
"']*?>'si",
"']*?>'si",
"/on([a-z]+)=/i"
);
$pattern = '!<(textarea).*?|!si';
내용 = preg_replace_callback($pattern, 'patt', 내용);
내용 = preg_replace($pattern1,'',내용);
이렇게 하였습니다.
감사합니다. ^^
댓글 달기