validaide/html-builder

PHP 库,提供流畅的接口以生成小的 HTML 片段

7.3.0 2024-09-05 07:48 UTC

README

Validaide 的 HTML 构建器是一个小巧的库,具有流畅的接口,用于生成 HTML 代码片段。

简介

好吧,有些人可能会说:"上帝啊,你为什么会需要这样的东西!?" 诚然,我们有像 Twig 这样棒的东西,对吧!?你是对的!我喜欢 Twig!但结果是我们仍然需要一些小的辅助方法来生成 HTML 的微小片段。

以下是一个例子

public function userStateToIcon(User $user): string
{
  return sprintf('<span class="%s" id="%s" data-username="%s"></span>', strtolower($user->getState()), $user->getId(), $user->getUsername()):
}

尽管上述内容还可以进一步优化,但最后一个返回语句是我们试图简化的

public function userStateToIcon(User $user): HTMLTag
{
  return HTML::create('span')
          ->class(strtolower($user->getState())
          ->id($user->getId())
          ->attr('data-username',$user->getUsername());
}

在字符数量上,这并不一定更快,但它将确保

  1. 生成有效的 HTML
  2. 生成安全的 HTML
  3. 之后更容易修改构建的 'HTML'

安装

我们的好朋友 Composer 通过使用 Packagist 当然来拯救我们

composer require validaide/html-builder

❤️ Composer ❤️ Packagist

示例

  1. 普通标签
    HTML::create('span')
    <span></span>
  2. 带内容的普通标签
    HTML::create('h1')->text('Heading 1');
    <h1>Heading 1</h1>
  3. 嵌套标签
    HTML::create('div')->id('div-1)->tag('div')->id('div-2);
    
    <div id="div-1"><div id="div-2"></div></div>