php-extended/php-bbcode-object

一个实现 php-extended/php-bbcode-interface 接口库的库。

7.0.6 2024-07-31 13:59 UTC

README

一个实现 php-extended/php-bbcode-interface 接口库的库。

coverage build status

安装

此库的安装通过 composer 完成,所有类的自动加载均通过其自动加载器实现。

  • 他们的网站 下载 composer.phar
  • 然后运行以下命令将此库作为依赖项安装
  • php composer.phar require php-extended/php-bbcode-object ^7

基本用法

要构建 bbcode 树,只需使用集合节点和单个节点


use PhpExtended\Bbcode\BbcodeCollectionNode;
use PhpExtended\Bbcode\BbcodeSingleNode;
use PhpExtended\Bbcode\BbcodeTextNode;

$_1 = new BbcodeCollectionNode('center');
$_2 = new BbcodeCollectionNode('url', 'https://example.com');
$_1->addNode($_2);
$_3 = new BbcodeSingleNode('img', 'https://example.com/toto.png');
$_2->addNode($_3);
$_4 = new BbcodeTextNode('An image of Toto');
$_2->addNode($_4);
$_1->__toString();
// echo [center][url=https://example.com][img]https://example.com/toto.png[/img]An image of Toto[/url][/center]

注意:在 BbcodeCollectionNode 中使用 BbcodeAbstractNode::TYPE_TEXT 将禁用在 __toString() 方法中输出标签。这可以用于拥有不封装在标签数据中的集合,例如 bbcode 节点树的根。


use PhpExtended\Bbcode\BbcodeParser;

$parser = new BbcodeParser()
$root = $parser->parse('<data>');
// $root is now a BbcodeCollectionNodeInterface

许可证

MIT(见 许可证文件)。