私が見ていない理由、これが機能しない理由はありますか?
$string = $someLongUserGeneratedString;
$replaced = str_replace(' ', '_', $string);
echo $replaced;
出力にはまだスペースが含まれています...任意のアイデアは素晴らしいでしょう
これを使用することをお勧めします。これは、単一のスペースと複数のスペースの両方の発生をチェックするためです(Lucas Greenによって提案されています)。
$journalName = preg_replace('/\s+/', '_', $journalName);
の代わりに:
$journalName = str_replace(' ', '_', $journalName);
代わりにこれを試してください:
$journalName = preg_replace('/\s+/', '_', $journalName);
説明:単なる空白だけでなく、空白が表示される可能性が最も高い(違いがあります)。
1つの一致した文字の置換には、str_replaceを使用します。
$string = str_replace(' ', '_', $string);
一致するすべての文字の置換には、preg_replaceを使用します。
$string = preg_replace('/\s+/', '_', $string);
代わりにこれを試してください:
$journalName = str_replace(' ', '_', $journalName);
空白を削除するには