1. PHP: Parsedown (가장 안정적인 표준)
1.1 설치 (Composer 사용)
composer require erusev/parsedown
1.2 사용 코드
<?php
// Composer를 사용한 경우, 이 파일을 포함해야 합니다.
require 'vendor/autoload.php';
/**
* Parsedown을 사용하여 Markdown을 HTML로 변환합니다.
* @param string $md_text 변환할 마크다운 텍스트
* @return string 변환된 HTML 문자열
*/
function convert_markdown_to_html(string $md_text): string
{
// Parsedown 인스턴스 생성
$Parsedown = new Parsedown();
// Parsedown::text() 함수로 변환 실행
return $Parsedown->text($md_text);
}
?>
2. Python: python-markdown (표준 라이브러리)
2.1 설치 (pip)
pip install markdown
2.2 사용 코드
import markdown
def convert_python_markdown(md_text):
# 'extra' 확장을 사용하여 GFM 문법(표, 취소선, 목록 등)을 지원합니다.
# 필요한 경우, 'codehilite' 등을 추가하여 코드 블록 문법 강조 기능을 사용할 수 있습니다.
html_output = markdown.markdown(
md_text,
extensions=['extra']
)
return html_output
3. JavaScript/Next.js: remark-html (Node.js/SSR 표준)
3.1 설치 (npm)
npm install remark remark-html
3.2 사용 코드 (JavaScript/Node.js)
import { remark } from 'remark';
import html from 'remark-html';
/**
* remark 라이브러리를 사용하여 Markdown을 HTML 문자열로 변환합니다.
* @param {string} md_text 변환할 마크다운 텍스트
* @returns {Promise<string>} 변환된 HTML 문자열
*/
async function markdownToHtml(md_text) {
const result = await remark()
// remark-html 플러그인을 사용하여 HTML로 렌더링하도록 지정
.use(html, { sanitize: false })
.process(md_text);
return result.toString();
}
// Next.js 환경에서는 이 함수를 getStaticProps 등의 서버 컴포넌트에서 호출해야 SEO에 유리합니다.