本文整理汇总了PHP中Parsedown类的典型用法代码示例。如果您正苦于以下问题:PHP Parsedown类的具体用法?PHP Parsedown怎么用?PHP Parsedown使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Parsedown类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: render
public function render($echo = false)
{
// Load template directories.
$loader = new \Twig_Loader_Filesystem();
$loader->addPath('templates');
// Set up Twig.
$twig = new \Twig_Environment($loader, array('debug' => true, 'strct_variables' => true));
$twig->addExtension(new \Twig_Extension_Debug());
// Mardown support.
$twig->addFilter(new \Twig_SimpleFilter('markdown', function ($text) {
$parsedown = new \Parsedown();
return $parsedown->text($text);
}));
// DB queries.
$twig->addFunction(new \Twig_SimpleFunction('db_queries', function () {
return Db::getQueries();
}));
// Render.
$string = $twig->render($this->template, $this->data);
if ($echo) {
echo $string;
} else {
return $string;
}
}
示例2: readme
public function readme()
{
$result = $this->_shell->getBlob($this, $this->_currentBranch, 'README.md');
$parsedown = new \Parsedown();
$result = $parsedown->text($result);
return str_replace('<pre>', '<pre class="prettyprint linenums">', $result);
}
示例3: it_can_parse_html_from_file
function it_can_parse_html_from_file(\Parsedown $parser, Filesystem $filesystem)
{
$this->setPath('path/to/file.md');
$filesystem->get('path/to/file.md')->shouldBeCalled()->willReturn('Some Markdown');
$parser->text('Some Markdown')->shouldBeCalled()->willReturn('Parsed Markdown');
$this->getHtml()->shouldBe('Parsed Markdown');
}
示例4: run
public function run()
{
include getcwd() . '/vendor/autoload.php';
$navStructure = (include getcwd() . '/docs/navigation.php');
echo "Loading markdown...\n";
$markdown = $this->findMarkdown($navStructure);
echo "Converting markdown to html...\n";
$Parsedown = new \Parsedown();
$html = $Parsedown->text($markdown);
$pdf = new \TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
#$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('My Documentation');
#$pdf->SetSubject('TCPDF Tutorial');
#$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
$pdf->SetFont('helvetica', '', 20);
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->AddPage();
$pdf->writeHTML($html, true, 0, true, 0);
$pdf->lastPage();
echo "Writing PDF...\n";
$pdf->Output($this->config['output'], 'F');
echo "Complete.\n";
}
示例5: postComment
public function postComment($id)
{
$input = Input::all();
Log::info($input);
$validator = Comment::validate($input);
if ($validator->fails()) {
FlashHelper::message("Null title", FlashHelper::DANGER);
return;
}
$post = Post::findOrFail($id);
if (!$post->can_comment || !PrivacyHelper::checkPermission(Auth::user(), $post)) {
throw new Exception("Don't have permision");
}
$comment = new Comment();
$Parsedown = new Parsedown();
$comment->post_id = $id;
$comment->parrent_id = $input['parrent_id'];
$comment->markdown = $input['markdown'];
Log::info($comment);
$comment->HTML = $Parsedown->text($comment->markdown);
$comment->save();
$comment->comments = array();
$data['html'] = View::make('posts._comment')->with('data', $comment)->with('level', count($comment->parents()))->with('can_comment', true)->render();
$data['status'] = true;
$data['parent_id'] = $comment->parrent_id;
return Response::json($data);
}
示例6: parseEscapedMarkedown
public static function parseEscapedMarkedown($str)
{
$Parsedown = new \Parsedown();
if ($str) {
return $Parsedown->text(e($str));
}
}
示例7: getConfiguration
public function getConfiguration()
{
$token = Seat::get('slack_token');
$parser = new \Parsedown();
$changelog = $parser->parse($this->getChangelog());
return view('slackbot::configuration', compact('token', 'changelog'));
}
示例8: build
function build($directory)
{
$menu = "";
$pages = "";
foreach (glob("{$directory}/*", GLOB_MARK) as $f) {
$find = array(".html", ".md", ".php", " ");
$replace = array("", "", "", "-");
$spaces = array("_", "-");
$nice_name = str_replace($find, $replace, basename($f));
$cap_name = ucwords(strtolower(str_replace($spaces, " ", $nice_name)));
if (substr($f, -1) === '/') {
$content = build($f);
$pages .= $content[1];
$menu .= "<li>\n\t\t\t\t\t<span data-menu='submenu'><i class='fa fa-plus-circle'></i> <span>{$cap_name}</span></span>\n\t\t\t\t\t<ul>";
$menu .= $content[0];
$menu .= "</ul></li>";
} else {
if ($cap_name != "Main") {
$pages .= "<section class='doc' data-doc='{$nice_name}'>";
$menu .= "<li data-show='{$nice_name}'> {$cap_name}</li>";
if (end(explode('.', basename($f))) == "md") {
$Parsedown = new Parsedown();
$pages .= $Parsedown->text(file_get_contents($f));
} else {
$pages .= file_get_contents($f);
}
$pages .= "</section>";
}
}
}
return [$menu, $pages];
}
示例9: processDatamap_preProcessFieldArray
/**
* Convert markdown to html on saving
*
* @param array $incommingFieldArray (reference) The field array of a
* record
* @param string $table The table currently processing data for
* @param string $id The record uid currently processing data for,
* [integer] or [string] (like 'NEW...')
* @param \TYPO3\CMS\Core\DataHandling\DataHandler $parentObject
*
* @return void
*/
public function processDatamap_preProcessFieldArray(&$incomingFieldArray, $table, $id, $parentObject)
{
if ($incomingFieldArray['CType'] == 'parsedown_markdown') {
$parseDown = new \Parsedown();
$incomingFieldArray['bodytext'] = $parseDown->text((string) $incomingFieldArray['tx_parsedown_content']);
}
}
示例10: Parsedown
public function Parsedown($doc)
{
$Parsedown = new \Parsedown();
$parsedown = $Parsedown->text($doc);
$parsedown = str_replace('<table>', '<table class="table table-striped table-bordered table-hover">', $parsedown);
return $parsedown;
}
示例11: test_
/**
* @dataProvider data
* @param $section
* @param $markdown
* @param $expectedHtml
*/
function test_($section, $markdown, $expectedHtml)
{
$parsedown = new Parsedown();
$actualHtml = $parsedown->text($markdown);
$actualHtml = $this->normalizeMarkup($actualHtml);
$this->assertEquals($expectedHtml, $actualHtml);
}
示例12: get_posts
/**
* 获取全部文章资源
* @param integer $page
* @param integer $perpage
* @return
*/
function get_posts($page = 1, $perpage = 0)
{
if ($perpage == 0) {
$perpage = 5;
}
$posts = get_post_names();
// 当前页面posts
$posts = array_slice($posts, ($page - 1) * $perpage, $perpage);
$tmp = [];
$Parsedown = new Parsedown();
foreach ($posts as $v) {
$post = new stdClass();
$arr = explode('_', $v);
// 从文件名获取时间戳
$post->date = strtotime(str_replace('posts/', '', $arr[0]));
// 获取url
$post->url = './' . date('Y/m', $post->date) . '/' . str_replace('.md', '', $arr[1]);
// 得到post内容
$content = $Parsedown->text(file_get_contents($v));
$arr = explode('</h1>', $content);
$post->title = str_replace('<h1>', '', $arr[0]);
$post->body = $arr[1];
$tmp[] = $post;
}
return $tmp;
}
示例13: invokeHandler
protected function invokeHandler()
{
$content = $this->file->getContent();
$parsedown = new Parsedown();
$this->smarty->assign('content', $parsedown->text($content));
$this->smarty->display('handler/markdown.tpl');
}
示例14: merge_action
function merge_action($mergeId)
{
$this->setBranch();
$api = new \firegit\app\mod\git\Merge();
$merge = $api->getMerge($mergeId);
if (!$merge) {
throw new \Exception('firegit.u_notfound');
}
$orig = $merge['orig_branch'];
$dest = $merge['dest_branch'];
setcookie('branch', $orig, time() + 3600 * 24, '/');
//blame使用cookie
$commits = $this->repo->listCommits($orig, $dest);
$branches = $this->repo->listBranches();
$umod = new \firegit\app\mod\user\User();
$tusers = $umod->getUsers();
// 评论
$modComment = new \firegit\app\mod\util\Comment();
$comments = $modComment->getComments(1, $mergeId, $this->_sz);
require_once VENDOR_ROOT . '/parsedown/Parsedown.php';
$parsedown = new \Parsedown();
foreach ($comments['list'] as $key => $value) {
$comments['list'][$key]['content'] = $parsedown->text($value['content']);
}
$this->set(array('pageTitle' => '合并请求:' . $merge['title'], 'merge' => $merge, 'commits' => $this->packCommits($commits), 'navType' => 'merge', 'branches' => $branches, 'orig' => $orig, 'dest' => $dest, 'tusers' => $tusers, 'notShowNav' => true, 'comments' => $comments['list'], 'curUser' => $this->getData('user')))->setView('git/merge.phtml');
}
示例15: renderDefault
function renderDefault()
{
$projects = $this->projectManager->byUser($this->user->id);
$awaiting = 0;
$accepted = 0;
$declined = 0;
foreach ($projects as $p) {
if ($p->accepted == Model\ProjectManager::STATUS_AWAITING) {
$awaiting++;
}
if ($p->accepted == Model\ProjectManager::STATUS_ACCEPTED) {
$accepted++;
}
if ($p->accepted == Model\ProjectManager::STATUS_DECLINED) {
$declined++;
}
}
$this->template->accepted = $accepted;
$this->template->declined = $declined;
$this->template->awaiting = $awaiting;
$project = $this->projectManager->accepted($this->user->id);
$this->template->project = $project;
$this->template->projects = $projects;
if ($accepted > 0) {
$parsedown = new \Parsedown();
$desc = htmlentities($project->description, ENT_QUOTES, 'UTF-8');
$this->template->desc = $parsedown->parse($desc);
$this->template->solutions = $this->projectManager->solutions($project->id);
$this->template->comments = $this->database->table('comments')->where(array('comments_id' => null, 'projects_id' => $project->id))->order('bump DESC');
$this->template->parsedown = $parsedown;
}
}