wudege / tforms
TForms is a flexible forms validation library for PHP API project.
v0.0.2
2017-02-20 04:00 UTC
Requires
- php: ^5.6 || ^7.0
Requires (Dev)
- phpunit/phpunit: ^5.6
- satooshi/php-coveralls: ^1.0
- squizlabs/php_codesniffer: ^2.7
This package is not auto-updated.
Last update: 2025-01-04 22:34:13 UTC
README
TForms is a flexible forms validation library for PHP API project.
INSTALL
- Use the composer command or the composer.json file. That's the recommend way. And the SDK is here
wudege/tforms
$ composer require wudege/tforms
USAGE
require __DIR__ . '/../vendor/autoload.php'; class UserEditForm extends \TForms\Form { const GENDER_MALE = 1; const GENDER_FEMALE = 0; public $username; public $email; public $age; public $gender; public $blog; /** * * @author wudege <hi@wudege.me> * @return array */ public function attributeNames() { return [ 'username', 'email', 'age', 'gender', 'blog', ]; } public function attributeLabels() { return [ 'username', 'email', 'age', 'gender', 'blog', ]; } public function rules() { return [ ['username, email, age, gender, blog', 'required'], ['username', 'length', 'min' => 4, 'max' => 32], ['email', 'email'], ['age', 'numerical', 'min' => 18, 'max' => 28, 'integerOnly' => true], ['gender', 'in', 'range' => [self::GENDER_MALE, self::GENDER_FEMALE]], ['blog', 'url'], ]; } } $form = new UserEditForm(); $form->attributes = [ 'username' => 'wudege', 'email' => 'hi@wudege.me', 'age' => 20, 'gender' => 1, 'blog' => 'https://wudege.me', ]; try { $form->validate(); } catch (\TForms\Exception\ValidationException $e) { die($e->getMessage()); } die('done');
TEST
$ ./vendor/bin/phpunit tests/TForms/Tests
LICENSE
The MIT License (MIT). License File.