arastta / form
此软件包已被废弃且不再维护。未建议替代软件包。
Arastta 表单组件
1.1.0
2016-04-11 14:31 UTC
Requires
- php: >=5.3.0
README
表单组件通过面向对象的PHP结构,快速开发表单。
元素
它可以创建包括文本框、文本域、复选框、下拉框、日期输入、颜色输入等各种元素。当前版本拥有超过34个元素。此外,它还支持13个HTML 5表单元素:电话、搜索、URL、电子邮件、日期时间、日期、月份、周、时间、本地日期时间、数字、范围和颜色。如果用户的网页浏览器不支持HTML5输入类型,这些元素将回退到文本框。
验证
对于支持HTML5的浏览器,它将在表单提交之前进行简单的客户端数据验证(例如,必填字段)。但大多数验证都是基于服务器端的(请参阅Validation文件夹内的Validation类)。要执行服务器端验证,必须在表单提交时调用isValid()方法,如果返回false则重定向页面。在这种情况下,当表单再次显示时,它将自动填充从用户会话中恢复的数据,并且验证错误将以红色显示。
视图
使用视图功能,可以按水平、垂直、内联或搜索布局排列表单元素。
使用方法
use Arastta\Component\Form\Form; use Arastta\Component\Form\Element; $options = array("Option #1", "Option #2", "Option #3"); $form = new Form("my-form"); $form->addElement(new Element\Hidden("form", "form-elements")); $form->addElement(new Element\HTML('<legend>Standard</legend>')); $form->addElement(new Element\Textbox("Textbox:", "Textbox")); $form->addElement(new Element\Password("Password:", "Password")); $form->addElement(new Element\File("File:", "File")); $form->addElement(new Element\Textarea("Textarea:", "Textarea")); $form->addElement(new Element\Select("Select:", "Select", $options)); $form->addElement(new Element\Radio("Radio Buttons:", "RadioButtons", $options)); $form->addElement(new Element\Checkbox("Checkboxes:", "Checkboxes", $options)); $form->addElement(new Element\HTML('<legend>HTML5</legend>')); $form->addElement(new Element\Phone("Phone:", "Phone")); $form->addElement(new Element\Search("Search:", "Search")); $form->addElement(new Element\Url("Url:", "Url")); $form->addElement(new Element\Email("Email:", "Email")); $form->addElement(new Element\Date("Date:", "Date")); $form->addElement(new Element\DateTime("DateTime:", "DateTime")); $form->addElement(new Element\DateTimeLocal("DateTime-Local:", "DateTimeLocal")); $form->addElement(new Element\Month("Month:", "Month")); $form->addElement(new Element\Week("Week:", "Week")); $form->addElement(new Element\Time("Time:", "Time")); $form->addElement(new Element\Number("Number:", "Number")); $form->addElement(new Element\Range("Range:", "Range")); $form->addElement(new Element\Color("Color:", "Color")); $form->addElement(new Element\HTML('<legend>jQuery UI</legend>')); $form->addElement(new Element\JQueryUIDate("Date:", "JQueryUIDate")); $form->addElement(new Element\Checksort("Checksort:", "Checksort", $options)); $form->addElement(new Element\Sort("Sort:", "Sort", $options)); $form->addElement(new Element\HTML('<legend>Custom/Other</legend>')); $form->addElement(new Element\State("State:", "State")); $form->addElement(new Element\Country("Country:", "Country")); $form->addElement(new Element\YesNo("Yes/No:", "YesNo")); $form->addElement(new Element\Captcha("Captcha:")); $form->addElement(new Element\Button); $form->addElement(new Element\Button("Cancel", "button", array( "onclick" => "history.go(-1);" ))); $form->render();
通过Composer安装
将 "arastta/form": "~1.0"
添加到您的composer.json文件中的require块,然后运行 composer install
。
{ "require": { "arastta/form": "~1.0" } }
或者,您可以直接从命令行运行以下命令
composer require arastta/form "~1.0"
许可证
此项目基于PFBC(PHP表单构建器类)并按照GPLv3许可证发布。