summaryrefslogtreecommitdiff
path: root/cmark/wrappers/wrapper.php
diff options
context:
space:
mode:
Diffstat (limited to 'cmark/wrappers/wrapper.php')
-rw-r--r--cmark/wrappers/wrapper.php26
1 files changed, 26 insertions, 0 deletions
diff --git a/cmark/wrappers/wrapper.php b/cmark/wrappers/wrapper.php
new file mode 100644
index 0000000000..4b68e2dc6a
--- /dev/null
+++ b/cmark/wrappers/wrapper.php
@@ -0,0 +1,26 @@
+<?php
+
+function markdownToHtml(string $markdown): string
+{
+ $ffi = FFI::cdef(
+ 'char *cmark_markdown_to_html(const char *text, size_t len, int options);',
+ 'libcmark.so'
+ );
+
+ $pointerReturn = $ffi->cmark_markdown_to_html($markdown, strlen($markdown), 0);
+ $html = FFI::string($pointerReturn);
+ FFI::free($pointerReturn);
+
+ return $html;
+}
+
+$markdown = <<<'md'
+# First level title
+
+## Second level title
+
+Paragraph
+
+md;
+
+echo markdownToHtml($markdown) . PHP_EOL;