freelancehunt / html_quickform2
提供在PHP中创建、验证和渲染HTML表单的方法。
v2.3.1
2022-04-05 06:25 UTC
Requires
- php: >=5.6.0
- ext-gettext: *
- ext-mbstring: *
- pear/html_common2: ^2.3.1
- pear/pear_exception: ^1.0
Requires (Dev)
- yoast/phpunit-polyfills: ^1.0
This package is auto-updated.
Last update: 2024-09-05 11:30:10 UTC
README
这是 [pear/HTML_QuickForm2] 的分支,根据我们的需求进行了额外修改,因此它可能不适用于所有人。
HTML_QuickForm2 提供创建、验证和渲染HTML表单的方法。它是 PEAR HTML_QuickForm 和相关包的 PHP5 重写。
功能
- 支持HTML4中定义的所有表单元素,提供几个自定义元素。计划支持HTML5表单元素。
- 服务器端和客户端验证,提供几个常见规则。验证规则可以结合使用 'and' 和 'or' 以实现复杂的验证场景。客户端验证可以在更改表单字段时以及在表单提交时运行。
- 客户端验证和JavaScript支持的元素使用一个小的自包含JS库,不依赖于JS框架。
- 支持多页表单(选项卡表单和向导)。
- 可插拔的元素、规则、渲染器和渲染器插件。
请通过 PEAR 错误跟踪器 或 Github 问题 报告问题。
欢迎Pull请求。
安装
该软件包可以通过PEAR安装
$ pear install HTML_QuickForm2
或者通过composer安装
$ composer require pear/html_quickform2
从版本2.1开始,composer安装完全依赖于自动加载,不包含 require_once
调用或使用 include-path
选项。
基本用法
require_once 'HTML/QuickForm2.php'; // Only when installed with PEAR $form = new HTML_QuickForm2('tutorial'); // Set defaults for the form elements $form->addDataSource(new HTML_QuickForm2_DataSource_Array([ 'name' => 'Joe User' ])); // Add some elements to the form $fieldset = $form->addElement('fieldset')->setLabel('QuickForm2 tutorial example'); $name = $fieldset->addElement('text', 'name', ['size' => 50, 'maxlength' => 255]) ->setLabel('Enter your name:'); $fieldset->addElement('submit', null, ['value' => 'Send!']); // Define filters and validation rules $name->addFilter('trim'); $name->addRule('required', 'Please enter your name'); // Try to validate a form if ($form->validate()) { echo '<h1>Hello, ' . htmlspecialchars($name->getValue()) . '!</h1>'; exit; } // Output the form echo $form;
更多示例在 docs/examples 目录中。
文档
...在PEAR网站上可用
当前版本生成的API文档也在这里。
测试、打包和安装(Pear)
测试,运行
$ phpunit tests/
在用composer安装依赖项之后。您也可以使用以下命令测试已安装的软件包
$ phpunit [PEAR tests dir]/HTML_QuickForm2
由于PEAR软件包需要重新启用其 require_once
语句,请在打包和安装之前运行辅助文件
$ php pear-package-helper.php
然后要构建,只需
$ pear package .pear-package/package.xml
从头开始安装
$ pear install .pear-package/package.xml
升级
$ pear upgrade -f .pear-package/package.xml