fernandozueet/php-sanitizer

Sanitizer php array values


Keywords
sanitizer, sanitizer array, sanitizer string, php sanitizer, php sanitizer array, php-sanitizer, php-sanitizer-array, sanitizer-array, sanitizer-string
License
MIT

Documentation

Php sanitizer

Sanitizer php array values.

Requirements

  • PHP 7.0 or superior

Installation

Install this package with composer:

composer require fernandozueet/php-sanitizer

Mode of use

//instance
$sanitizer = new \PhpSanitizer\Sanitizer();

//values array
$array = [
    'field' => '  Test 123   ',
    'field2' => '01/06/1987',
    'field3' => [
        'test' => '   test value'
    ]
];

//set values
$sanitizer->setValues($array);

//sanitizer
$sanitizer->setField('field')->trim()->alpha();
$sanitizer->setField('field2')->date('Y-m-d');
$sanitizer->setField('field3.test')->trim();
$sanitizer->setField('field3')->alpha()->removeEmptyValue(); //remove value empty
$sanitizer->setField('field3.test')->setValueDefault(1)->trim(); //set value default
$valueClear = $sanitizer->setField('field3.test')->trim()->get(); //get value

//get values
var_dump($sanitizer->getValues()); //only set values
var_dump($sanitizer->getValues(false)); //all values

//or

//get values
var_dump($sanitizer->getValue('field'));
var_dump($sanitizer->getValue('field2'));
var_dump($sanitizer->getValue('field3.test'));
{
    "field": "Test",
    "field2": "1987-01-06",
    "field3": {
        "test": "test value"
    }
}

Mode of use Laravel

Important: For laravel versions smaller than 6.0 use version 1.8.12

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class TestRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return false;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        $this->sanitize();

        return [
          'name' => 'required',
          'url' => 'required|url|unique:links,url'
        ];
    }

    /**
     * Input sanitizer 
     *
     * @return void
     */
    public function sanitizer()
    {
        $sanitizer = new \PhpSanitizer\Sanitizer();
        $sanitizer->setValues($this->all());

        //sanitizer
        $sanitizer->setField('field')->trim()->alpha();
        $sanitizer->setField('field2')->date('Y-m-d');
        $sanitizer->setField('field3.test')->trim();
     
        $this->replace($sanitizer->getValues());
    }
}

Filters

strip_tags

Strip HTML and PHP tags from a string.

strip_tags(string $allowable_tags = null)

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "<a href='#'>Link</a> <h1>Hello world!</h1>"
]);

$sanitizer->setField('field')->strip_tags('<a>');
{
    "field": "<a href='#'>Link</a> Hello world!"
}

htmlentities

Convert all applicable characters to HTML entities.

htmlentities(int $quote_style = ENT_QUOTES, string $charset = 'UTF-8', $double_encode = null)

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "<a href='#'>Link</a> <h1>Hello world!</h1>"
]);

$sanitizer->setField('field')->htmlentities();
{
    "field": "&lt;a href=&quot;#&quot;&gt;Link&lt;/a&gt; &lt;h1&gt;Hello world!&lt;/h1&gt"
}

nl2br

Inserts HTML line breaks before all newlines in a string.

nl2br()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "test
                test"
]);

$sanitizer->setField('field')->nl2br();
{
    "field": "test<br />test"
}

cnpj

Format the cnpj format number.

cnpj()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "54465939000150"
]);

$sanitizer->setField('field')->cnpj();
{
    "field": "54.465.939/0001-50"
}

cpf

Format the cpf format number.

cpf()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "43740999055"
]);

$sanitizer->setField('field')->cpf();
{
    "field": "437.409.990-55"
}

numeric

Numbers.

numeric()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "asdfg123456"
]);

$sanitizer->setField('field')->numeric();
{
    "field": "123456"
}

alphanumeric

Letters from aaz and numbers.

alphanumeric()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "!@#asdfg123456"
]);

$sanitizer->setField('field')->alphanumeric();
{
    "field": "asdfg123456"
}

alpha

Letters from a to z.

alpha()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "123456asdfg*&("
]);

$sanitizer->setField('field')->alpha();
{
    "field": "asdfg"
}

url

filter_var FILTER_SANITIZE_URL

url()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "http://php.net/manual/en/function.htmlentities.phpçù"
]);

$sanitizer->setField('field')->url();
{
    "field": "http://php.net/manual/en/function.htmlentities.php"
}

email

filter_var FILTER_SANITIZE_EMAIL

email()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "çótest@test.com"
]);

$sanitizer->setField('field')->email();
{
    "field": "test@test.com"
}

strtolower

Make a string lowercase.

strtolower()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "TEST tEST"
]);

$sanitizer->setField('field')->strtolower();
{
    "field": "test test"
}

strtoupper

Make a string uppercase.

strtoupper()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "TEST tEST"
]);

$sanitizer->setField('field')->strtoupper();
{
    "field": "TEST TEST"
}

ucwords

Uppercase the first character of each word in a string.

ucwords()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "test ok"
]);

$sanitizer->setField('field')->ucwords();
{
    "field": "Test Ok"
}

ucfirst

Make a string's first character uppercase.

ucfirst()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "test test"
]);

$sanitizer->setField('field')->ucfirst();
{
    "field": "Test test"
}

lcfirst

Make a string's first character lowercase.

lcfirst()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "Test test"
]);

$sanitizer->setField('field')->lcfirst();
{
    "field": "test test"
}

urlencode

Encodes a URL.

urlencode()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "my=apples&are=green and red "
]);

$sanitizer->setField('field')->urlencode();
{
    "field": "my=apples&are=green+and+red"
}

urldecode

Decodes an encoded URL.

urldecode()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "my=apples&are=green+and+red"
]);

$sanitizer->setField('field')->urldecode();
{
    "field": "my=apples&are=green and red"
}

rtrim

Removes blanks (or other characters) from the beginning of the string.

rtrim(string $charlist = ' ')

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "   test test    "
]);

$sanitizer->setField('field')->rtrim();
{
    "field": "   test test"
}

ltrim

Removes blanks (or other characters) from the beginning of the string.

ltrim(string $charlist = ' ')

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "   test test    "
]);

$sanitizer->setField('field')->ltrim();
{
    "field": "test test    "
}

trim

Removing space at the beginning and end of a string.

trim(string $charlist = ' ')

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "   test test    "
]);

$sanitizer->setField('field')->trim();
{
    "field": "test test"
}

date

Date format.

date($format = 'Y-m-d')

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "01/06/1987"
]);

$sanitizer->setField('field')->date('Y-m-d');
{
    "field": "1987-01-06"
}

number_format

Format a number with grouped thousands.

number_format(int $decimals, string $decimalpoint = null, string $separator = null)

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "1000"
]);

$sanitizer->setField('field')->number_format(2, ',', '.');
{
    "field": "1.000,00"
}

float

filter_var FILTER_SANITIZE_NUMBER_FLOAT

float()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "12.50"
]);

$sanitizer->setField('field')->float();
{
    "field": "1250"
}

boolean

filter_var FILTER_VALIDATE_BOOLEAN

bool()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "true"
]);

$sanitizer->setField('field')->bool();
{
    "field": true
}

string

filter_var FILTER_SANITIZE_STRING

string()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "string test"
]);

$sanitizer->setField('field')->string();
{
    "field": "string test"
}

floatval

Get float value of a variable.

floatval()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "100.50"
]);

$sanitizer->setField('field')->floatval();
{
    "field": 100.5
}

intval

Get the integer value of a variable.

intval()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "100"
]);

$sanitizer->setField('field')->intval();
{
    "field": 100
}

typing_bool

typing_bool()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "true" 
]);

$sanitizer->setField('field')->typing_bool();
{
    "field": true
}

typing_float

typing_float()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "100.5" 
]);

$sanitizer->setField('field')->typing_float();
{
    "field": 100.5
}

typing_int

typing_int()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "100" 
]);

$sanitizer->setField('field')->typing_int();
{
    "field": 100
}

typing_string

typing_string()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "string" 
]);

$sanitizer->setField('field')->typing_string();
{
    "field": "string"
}

typing_object

typing_object()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => [ 'ok' => 'test' ]
]);

$sanitizer->setField('field')->typing_object();

typing_array

typing_array()

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => [ 'ok' => 'test' ]
]);

$sanitizer->setField('field')->typing_array();

preg_replace

Perform a regular expression search and replace.

preg_replace($patterns, $replacements, $limit = -1)

http://php.net/manual/en/function.preg-replace.php

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "1234asdfg" 
]);

$sanitizer->setField('field')->preg_replace('/[^A-Za-z]/', '');
{
    "field": "asdfg"
}

filter_var

Filters a variable with a specified filter.

filter_var(int $filter, $options = null)

http://php.net/manual/en/function.filter-var.php

$sanitizer = new \PhpSanitizer\Sanitizer();

$sanitizer->setValues([
    'field' => "çótest@test.com" 
]);

$sanitizer->setField('field')->filter_var(FILTER_SANITIZE_EMAIL);
{
    "field": "test@test.com"
}

Contributing

Please see CONTRIBUTING for details.

Security

If you discover security related issues, please email fernandozueet@hotmail.com instead of using the issue tracker.

Credits

License

The PHP Upload and Image Manipulation is licensed under the MIT license. See License File for more information.