承接 csrdelft/bb 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

csrdelft/bb

最新稳定版本:v1.3.6

Composer 安装命令:

composer require csrdelft/bb

包简介

C.S.R. BB Parser

README 文档

README

This package was originally based on eamBBParser. Some parser internals are still based on that implementation.

Installation

Install with composer

composer require csrdelft/bb

Usage

Either use the DefaultParser or implement your own parser.

$parser = new \CsrDelft\bb\DefaultParser();

echo $parser->getHtml('[h=1]Hello World[/h]');

Tags

The default tags available are:

Tag name Description
[b] Bold text
[i] Italic
[u] Underline
[s] Strikethrough
[sub] Subscript
[sup] Superscript
[clear] Clear
[code] Code block
[commentaar] Comment
[div class=? w=? h=? float=left/right clear?] Div
[email] Email
[h] Header
[hr] Horizontal rule
[1337] Leet speak
[lishort], [*] List item
[list], [ulist] List
[li] List item
[me] /me
[rn] New line
[nobold] Disable [b]
[quote] Blockquote
[table] Table element
[td] Table cell
[th] Table header
[tr] Table Row

Custom tags

Tags must extend the \CsrDelft\bb\BbTag class. Tags must implement the parse($arguments) and getTagName() methods.

The getTagName method retuns a string or list of strings with the name(s) of this tag.

The parse method receives a map of arguments. The readContent method can be used to retrieve the contents of the tag, this content is parsed by the parser when it is received. The parser reads the input until an end tag is found. readContent has an optional parameter for tags which are forbidden to be in this tag. For instance a [sup] tag cannot contain another sup tag or a sub tag.

A tag has access to an environment, which is by default of type CsrDelft\bb\BBenv (can be overridden).

Custom tag example

class BbSuperscript extends BbTag {
	public static function getTagName() {
		return 'sup';
	}

	public function render() {
		return '<sup class="bb-tag-sup">' . $this->getContent() . '</sup>';
	}
    
    public function parse($arguments = []) {
         $this->readContent(['sub', 'sup']);
       }
}

Custom parser

A custom parser must extend Parser and contains a list of tags in the $tags field. See DefaultParser for the list of default tags.

统计信息

  • 总下载量: 3.34k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 5
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-07-06