Tuesday, June 5, 2018

PHP - remove all except letters, numbers, dashes and blanks

 
PHP - remove all except letters, numbers, dashes and blanks for various cases, like cleaning user input for DB storage, further execution and making it safe.


It's very easy to remove special characters.

$search = preg_replace('/[^a-zA-Z0-9  -]/', '', $search);


Also, if you would like to check if search string contains some characters, it's like this:

 if (preg_match('/[^a-zA-Z0-9 -]/', $search)) {
 echo 'invalid';
} else {
 echo 'valid';
}

Or in opposite case, to chech only for special characters:

preg_match('/[$&+,:;=?@#|\<>^*()%!]/', $userInput)