I have a problem when using the trim() function in php.
JavaScript
x
//Suppose the input variable is null.
$input = NULL;
echo (trim($input));
As shown above, the output of the codes is empty string if the input argument if NULL. Is there any way to avoid this? It seems the trim will return empty string by default if the input is unset or NULL value.
This give me a hard time to use trim as following.
JavaScript
array_map('trim', $array);
I am wondering if there’s any way I can accomplish the same result instead of looping through the array. I also noticed that the trim function has second parameter, by passing the second parameter, you can avoid some charlist. but it seems not work for me.
Any ideas? Thanks.
Advertisement
Answer
Create a proxy function to make sure it’s a string before running trim()
on it.
JavaScript
function trimIfString($value) {
return is_string($value) ? trim($value) : $value;
}
And then of course pass it to array_map()
instead.
JavaScript
array_map('trimIfString', $array);