I have a form which takes user inputs; Recently, I have come across many user inputs with multiple white spaces. Eg. "My tests are working fine!" Is there any way I can get rid of these white spaces at PHP level or MySQL level?
my code so far is as below:
function noWhiteSpaces($string) {
if (!empty($string)) {
$string = trim($string);
$new_str = str_replace(' ', ' ', $string);
} else {
return false;
}
return $new_str;
}
echo noWhiteSpaces("My tests are working fine here !");
If the input is actual whitespaces and you want to replace them with a single space, you could use a regular expression.
$stripped = preg_replace('/\s+/', ' ', $input);
\s
means 'whitespace' character. +
means one or more. So, this replaces every instance of one or more whitespace characters' in $input
with a single space. See the preg_replace()
docs, and a nice tutorial on regexes.
If you're not looking to replace real whitespace but rather stuff like
, you could do the same, but not with \s
. Use this instead:
$stripped = preg_replace('/( )+/', ' ', $input);
Note how the brackets enclose
.