php 글에서 한줄마다 array의 element로 설정하기
본문
1. 개요
2. 어형
3. 역사
4. 구성
5. 특징
6. 중요성
7. 종류
7.1. 게임 설명서
7.1.1. 팔콘 매뉴얼의 예
7.2. 장난감 설명서
8. 부차적 기능: 복사 방지
9. 관련 문서
위와 같은 글을 넣었을때 한줄마다 array에 넣을려고 하려면 어떻게 해야 하나요? \n 으로 구분하려 했는데 안되네요..
$text = $view['content'];
// 텍스트를 줄 단위로 분할
$lines = explode("\n", $text);
// 결과 확인
print_r($lines);
!-->
답변 2
<?php
$text = '
1. 개요
2. 어형
3. 역사
4. 구성
5. 특징
6. 중요성
7. 종류
7.1. 게임 설명서
7.1.1. 팔콘 매뉴얼의 예
7.2. 장난감 설명서
8. 부차적 기능: 복사 방지
9. 관련 문서
';
// 텍스트를 줄 바꿈 문자로 분할합니다.
$lines = preg_split('/\n|\r/', $text);
// 배열 초기화
$items = [];
// 첫 번째와 마지막 항목을 제외한 항목을 선택합니다.
for ($i = 1; $i < count($lines) - 1; $i++) {
$line = trim($lines[$i]);
$items[] = $line;
}
// 각 항목을 줄 바꿈 문자로 출력합니다.
foreach ($items as $item) {
echo $item . "<br>";
}
?>
text mode 가 아닌 html 모드로 확인이 된 부분이 아닌가 생각해봅니다.
text mode 에서는 기대하는 결과가 나오며
<?php
$content = <<<HEREDOC
1. 개요
2. 어형
3. 역사
4. 구성
5. 특징
6. 중요성
7. 종류
7.1. 게임 설명서
7.1.1. 팔콘 매뉴얼의 예
7.2. 장난감 설명서
8. 부차적 기능: 복사 방지
9. 관련 문서
HEREDOC;
$view = ['content' => $content];
?>
<?php
$text = $view['content'];
// 텍스트를 줄 단위로 분할
$lines = explode("\n", $text);
// 결과 확인
print_r($lines);
?>
html mode 에서는 다음과 같은 방법으로 시도해볼수 있습니다.
<?php
$content = '<p>1. 개요</p><p>2. 어형</p><p>3. 역사</p><p>4. 구성</p><p>5. 특징</p><p>6. 중요성</p><p>7. 종류</p><p>7.1. 게임 설명서</p><p>7.1.1. 팔콘 매뉴얼의 예</p><p>7.2. 장난감 설명서</p><p>8. 부차적 기능: 복사 방지</p><p>9. 관련 문서</p>';
$view = ['content' => $content];
$view['content'] = preg_replace(['!<[^/]+>!', '!</[^/]+>!'], ['', "\n"], $view['content']);
?>
<?php
$text = $view['content'];
// 텍스트를 줄 단위로 분할
$lines = explode("\n", $text);
// 결과 확인
print_r($lines);
?>
답변을 작성하시기 전에 로그인 해주세요.