Skip to content

Commit

Permalink
Creating function for PHP wrapper and freeing pointer
Browse files Browse the repository at this point in the history
  • Loading branch information
CViniciusSDias authored and jgm committed Apr 11, 2024
1 parent e491213 commit d22beb4
Showing 1 changed file with 15 additions and 7 deletions.
22 changes: 15 additions & 7 deletions wrappers/wrapper.php
Original file line number Diff line number Diff line change
@@ -1,9 +1,19 @@
<?php

$ffi = FFI::cdef(
'char *cmark_markdown_to_html(const char *text, size_t len, int options);',
'libcmark.so'
);
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
Expand All @@ -13,6 +23,4 @@

md;

$html = FFI::string($ffi->cmark_markdown_to_html($markdown, strlen($markdown), 0));

echo $html . PHP_EOL;
echo markdownToHtml($markdown) . PHP_EOL;

0 comments on commit d22beb4

Please sign in to comment.