Is there a reason that I'm not seeing, why this doesn't work?
$string = $someLongUserGeneratedString; $replaced = str_replace(' ', '_', $string); echo $replaced;
The output still includes spaces... Any ideas would be awesome
I'll suggest that you use this as it will check for both single and multiple occurrence of white space (as suggested by Lucas Green).
$journalName = preg_replace('/\s+/', '_', $journalName);
instead of:
$journalName = str_replace(' ', '_', $journalName);
Try this instead:
Explanation: you are most likely seeing whitespace, not just plain spaces (there is a difference).
For one matched character replace, use str_replace:
$string = str_replace(' ', '_', $string);
For all matched character replace, use preg_replace:
$string = preg_replace('/\s+/', '_', $string);
to remove white space