vardumper/extended-htmldocument
Composer 安装命令:
composer require vardumper/extended-htmldocument
包简介
ExtendedHTMLDocument is a simple PHP library which adds all HTML5 Elements as PHP classes and extends PHP 8.4's DOM\HTMLDocument class.
关键字:
README 文档
README
|
|
|
Extended HTML Document Library
This library provides a way to work with HTML elements in PHP, offering an object-oriented approach that aligns with the HTML5 specifications. It also provides a way to automatically transform HTML into different templating engines or code for frontend frameworks. It also adds autocompletion to PHP for all HTML5 elements, which is especially useful when working with DOM Documents. It adds additional functionality and a stronger focus on HTML5 while being fully compatible with PHP's DOM\HTMLDocument and DOM\HTMLElement classes.
Installation
composer require --dev vardumper/extended-htmldocument
TL;DR
This library adds the HTML5 specification to PHP and is fully compatible with DOM\HTMLDocument. You can now instantiate an Anchor without passing a document.
use Html\Element\Inline\Anchor; use Html\Enum\RelEnum; echo (new Anchor()) ->setClass('secondary') ->setRel(RelEnum::NOFOLLOW) ->setHref('https://google.com') ->setTitle('Google it') ->setContent('Click me'); // produces: <a class="secondary" href="https://google.com" rel="nofollow" title="Google it">Click me</a>
Generated Templates
Templates are generated from the HTML5 schema for every HTML element. These allow for better consistency in your design system(s), support all possible HTML attributes and have basic validations for enum attributes.
Files are grouped into inline, block and void elements. For elements with a specific content model, a composed template is generated as well. (eg <table><tr><td>Cell</td><tr></table>)
Blade
Blade templates can be found in templates/blade. The README has more infos and usage examples. Blade templates can also be installed via npm with the @typesafe-html5/blade package.
Each element's template is generated as index.blade.php inside a subdirectory named after the element (e.g. blade/block/div/index.blade.php), which Blade resolves as x-block.div.
The blade-component generator converts a full YAML component definition into a Blade document using <x-block.*>, <x-inline.*> and <x-void.*> component tags. Use it via the watch command — see the README for examples.
React & NextJS
React and NextJS templates can be found in templates/nextjs. See the README file for details. NextJS templates can also be installed via npm with the @typesafe-html5/react package.
Storybook
Storybook with atoms for all HTML5 elements can be seen in the Demo. Files can be found in templates/storybook. There's also a README with more details.
Storybook for Twig
TBD
Storybook for React/NextJS
TBD
Twig
Twig templates for flexible and performant use with include, embed, and use can be found in templates/twig. See the README for more details and usage examples. Twig templates can also be installed via npm with the @typesafe-html5/twig package.
Twig Components Bundle
Generated, typesafe Twig Components for use with Symfony UXs Twig Components can be found in templates/twig-component. See the README for more details and usage examples. Twig templates can also be installed via the Symfony Bundle vardumper/html5-twig-component-bundle package.
Typescript
Typescript templates can be found in templates/typescript. See the README for more details and usage examples. Typescript templates can also be installed via npm with the @typesafe-html5/typescript package.
Documentation
See the Documentation for more.
vardumper/extended-htmldocument 适用场景与选型建议
vardumper/extended-htmldocument 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 359 次下载、GitHub Stars 达 9, 最近一次更新时间为 2025 年 02 月 23 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「code generation」 「HTML5」 「html」 「dom」 「document」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 vardumper/extended-htmldocument 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 vardumper/extended-htmldocument 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 vardumper/extended-htmldocument 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Memio's PrettyPrinter, used to generate PHP code from given Model
Toolset for generating PHP code
Fabricates patterns.
PHP PDF library for generating and importing PDF documents. A component of the Pop PHP Framework
REST PDF Invoices for Magento 2
Common PHP filters for code generation
统计信息
- 总下载量: 359
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 9
- 点击次数: 17
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-02-23