inpsyde / filter
Inpsyde Filter library.
Installs: 72 335
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 12
Forks: 0
pkg:composer/inpsyde/filter
Requires
- php: >=5.5.0
Requires (Dev)
- php: >=5.5.0
- brain/monkey: ~1.0
- mockery/mockery: ~0.9
- phpunit/phpunit: ~4.8|~5.1
This package is auto-updated.
Last update: 2025-10-20 21:23:34 UTC
README
This package provides a collection of filters for WordPress.
Contents
Installation
$ composer require --dev [--prefer-dist] inpsyde/filter
Usage
Each filter filters a value with a given configuration.
$filter = new Inpsyde\Filter\DateTime(); $value = $filter->filter( '21.06.1987' ); // converts to: 1987-06-21
Changing Options
Some filters are having additional options which can be overwritten in constructor.
$options = [ 'format' => 'd.m.Y' ]; $filter = new Inpsyde\Filter\DateTime( $options ); $value = $filter->filter( '1987-06-21' ); // 21.06.1987
Available Filters
Following basic filters are available:
ArrayValueDateTime
In addition, there are filters which are wrappers for well known WordPress-functions:
WordPress\AbsintWordPress\AutoPWordPress\EscHtmlWordPress\EscUrlRawWordPress\NormalizeWhitespaceWordPress\RemoveAccentsWordPress\SanitizeFileNameWordPress\SanitizeKeyWordPress\SanitizePostFieldWordPress\SanitizeTextFieldWordPress\SanitizeTitleWordPress\SanitizeTitleWithDashesWordPress\SanitizeUserWordPress\SpecialCharsWordPress\StripTagsWordPress\Unslash
Create your own Filter
File My\Own\Filter\YourFilter.php
namespace My\Own\Filter; use Inpsyde\Filter\AbstractFilter; class YourFilter extends AbstractFilter { /** * Optional: set some options, which can be overwritten by constructor. * @var array */ protected $options = [ 'key' => 'value' ]; /** * {@inheritdoc} */ public function filter( $value ) { // do something return $value; } }
Usage
// Optional: set "new value" to Filter. $options = [ 'key' => 'new value' ]; $filter = new YourFilter( $options ); $value = $filter->filter( 'my value' );
Factory
The library comes with a FilterFactory which allows you to create instances of new filters.
$factory = new \Inpsyde\Filter\FilterFactory(); $filter = $factory->create( 'DateTime' ); // returns instance of \Inpsyde\Filter\DateTime
The factory is also able to create instances of external classes, if they implement the \Inpsyde\Filter\FilterInterface:
$factory = new \Inpsyde\Filter\FilterFactory(); $filter = $factory->create( My\Own\Filter\YourFilter::class ); // Creates an instance of your own filter.
Other Notes
Bugs, technical hints or contribute
Please give us feedback, contribute and file technical bugs on GitHub Repo.
License
This repository is a free software, and is released under the terms of the GNU General Public License version 2 or (at your option) any later version. See LICENSE for complete license.
Changelog
See commits or read short version.