Starting with PHP 8.1, the filter type FILTER_SANITIZE_STRING was
deprecated. To avoid deprecated errors, this class implements similar
behavior as the FILTER_SANITIZE_STRING filter. This is done by changing
filters using \DealNews\Filter\Filter::FILTER_SANITIZE_STRING
to use
FILTER_CALLBACK
to a closure implementing behavior similar to what
\FILTER_SANITIZE_STRING
provides.
This class is a drop in replacement for filter_var
, filter_var_array
,
filter_input
, and filter_input_array
. The only filter that is is modified
are ones using \DealNews\Filter\Filter::FILTER_SANITIZE_STRING
.
This is how you used FILTER_SANITIZE_STRING
in PHP <=8.0.
<?php
$input = filter_input_array(
INPUT_GET,
[
'id' => FILTER_VALIDATE_INT,
'search' => FILTER_SANITIZE_STRING
]
);
In PHP 8.1 or higher, you can use DealNews\Filter instead like so.
<?php
use DealNews\Filter\Filter;
$filter = new Filter();
$input = $filter->inputArray(
INPUT_GET,
[
'id' => FILTER_VALIDATE_INT,
'search' => Filter::FILTER_SANITIZE_STRING
]
);