weiloon1234/bbcodeparser

使用这个库轻松解析BBCode。

1.0.0 2018-03-02 14:03 UTC

This package is auto-updated.

Last update: 2024-09-08 19:11:31 UTC


README

Latest Version Software License Build Status Coverage Status Quality Score Total Downloads

Weiloon1234\BBCodeParser 包将帮助您解析BBCode。

安装

通过 Composer

$ composer require weiloon1234/bbcodeparser

使用方法

解析一些文本非常简单!

$bbcode = new Weiloon1234\BBCode\BBCodeParser;

echo $bbcode->parse('[b]Bold Text![/b]');
// <strong>Bold Text!</strong>

如果不想使用所有BBCodes,可以这样操作。

$bbcode = new Weiloon1234\BBCode\BBCodeParser;

echo $bbcode->only('bold', 'italic')
            ->parse('[b][u]Bold[/u] [i]Italic[/i]![/b]');
            // <strong>[u]Bold[/u] <em>Italic</em>!</strong>

echo $bbcode->except('bold')
            ->parse('[b]Bold[/b] [i]Italic[/i]');
            // [b]Bold[/b] <em>Italic</em>

默认情况下,解析器是区分大小写的。但如果您想让解析器接受像 [B]粗体文本[/B] 这样的标签,那就非常简单。

$bbcode = new Weiloon1234\BBCode\BBCodeParser;

// Case insensitive
echo $bbcode->parse('[b]Bold[/b] [I]Italic![/I]', true);
     // <strong>Bold</strong> <em>Italic!</em>

// Or like this

echo $bbcode->parseCaseInsensitive('[b]Bold[/b] [i]Italic[/i]');
     // <strong>Bold</strong> <em>Italic!</em>

您还可以通过使用另一个辅助函数来更明确地表明解析器是区分大小写的。

    $bbcode = new Weiloon1234\BBCode\BBCodeParser;

    echo $bbcode->parseCaseSensitive('[b]Bold[/b] [I]Italic![/I]');
         // <strong>Bold</strong> [I]Italic![/I]

如果您想完全移除所有BBCode,只需调用一个函数即可。

    $bbcode = new Weiloon1234\BBCode\BBCodeParser;

    echo $bbcode->stripBBCodeTags('[b]Bold[/b] [i]Italic![/i]');
         // Bold Italic!

Laravel 集成

Laravel 的集成非常简单,无论是Laravel 4还是Laravel 5,方法都是一样的。只需打开您的 app.php 配置文件。

在这里,您只需将以下内容添加到您的 providers 数组中

'Weiloon1234\BBCode\BBCodeParserServiceProvider'

并将其添加到 facades 数组中

'BBCode' => 'Weiloon1234\BBCode\Facades\BBCodeParser'

语法与在纯PHP中使用时相同,但需要在方法前使用 BBCode::。以下是一些示例。

// Simple parsing
echo BBCode::parse('[b]Bold Text![/b]');

// Limiting the parsers with the only method
echo BBCode::only('bold', 'italic')
        ->parse('[b][u]Bold[/u] [i]Italic[/i]![/b]');
        // <strong>[u]Bold[/u] <em>Italic</em>!</strong>

// Or the except method
echo BBCode::except('bold')
        ->parse('[b]Bold[/b] [i]Italic[/i]');
        // [b]Bold[/b] <em>Italic</em>

测试

$ phpunit

贡献

请参阅 CONTRIBUTING 了解详情。

鸣谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。