Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ailixter/gears-filter

The project, which gears Filter functions.
https://github.com/ailixter/gears-filter

component config conversion filter input parameters php request sanitization typecast validation

Last synced: 18 days ago
JSON representation

The project, which gears Filter functions.

Awesome Lists containing this project

README

        

# gears-filter
The project, which gears Filter functions.

Casts
- variable
- input GET, POST, etc.
- array

Cast $var into $type.
``` php
$filter = new Filter;
$int1 = $filter->cast(FILTER_VALIDATE_INT, '123');
$int2 = $filter->cast(['filter'=>FILTER_VALIDATE_INT, 'flags'=>...], '123');
$int3 = $filter->cast('int', '123');
```

Cast input $key into $type.
``` php
$filter = new Filter;
$int1 = $filter->castInput(FILTER_VALIDATE_INT, INPUT_POST, 'p');
$int2 = $filter->castInput(['filter'=>FILTER_VALIDATE_INT, 'flags'=>...], INPUT_POST, 'p');
$int3 = $filter->castInput('int', INPUT_POST, 'p');
```

Utility Filter-based class ArrayFilter
``` php
$array = new ArrayFilter(['a' => 123, 'b' => 'false'], new Filter);
$bool = $array->get('bool', 'b');
$float = $array->getFloat('a', 0.0);
$custom = $array->getCustomType('a');
$all = $array->castAll(['a' => 'float', 'b' => 'bool', 'undefined' => 'str']);
```

Utility Filter-based class InputFilter
``` php
$post = new InputFilter(INPUT_POST, new Filter);
$bool = $post->get('bool', 'b');
$float = $post->getFloat('a', 0.0);
$custom = $post->getCustomType('a');
$all = $post->castAll(['a' => 'float', 'b' => 'bool', 'undefined' => 'str']);
```