PHP:用空格字符替换hypen

PHP:用空格字符替换hypen,php,Php,我有绳子 “*A----*B----” 我想用空格字符('')替换所有催眠('-')字符。我用str_替换为 str_替换('-','','*A-----*B------) 结果应该是 “*A*B” 但它却给了我 “*A*B” 为什么不保留空格字符?我需要在字符串中保留空格字符 [有趣的是,在发布此问题时,即使我也不能键入带有空格的字符串:)在所有浏览器中,多个空格都显示为单个空格 要停止这种行为,您可以在包含元素上使用(不间断空格)或空白:preCSS。我想这是因为您在HTML页面中显示字符串

我有绳子

“*A----*B----”

我想用空格字符('')替换所有催眠('-')字符。我用str_替换为

str_替换('-','','*A-----*B------)

结果应该是

“*A*B”

但它却给了我

“*A*B”

为什么不保留空格字符?我需要在字符串中保留空格字符


[有趣的是,在发布此问题时,即使我也不能键入带有空格的字符串:)

在所有浏览器中,多个空格都显示为单个空格


要停止这种行为,您可以在包含元素上使用
(不间断空格)或
空白:pre
CSS。

我想这是因为您在HTML页面中显示字符串,忽略了多个空白。如果您想看到它们,请尝试在您应该尝试的
之间回音

echo "<pre>" . $yourstring . "</pre>";

谢谢大家,你们都很好。实际上,我正在准备一些EDI文档,在创建文件之前,我将输出转储到浏览器以检查其有效性。我看到了html的源代码,是的,它在需要的地方有5个空格。

尝试使用
str\u replace('-','$str)

HTML忽略字符后的多个空格,若要在HTML中添加多个空格,请使用不间断空格字符

这将用不间断空格字符替换
-
,并解决问题


HMTL忽略连续空格并将其显示为一个(尽管在代码本身中,从技术上讲,它仍然是5个空格字符)。使用
将此标题替换为html格式的输出?
有趣的是,在发布此问题时,即使我也不能键入带有空格的字符串:)
回答您的问题并解决上述问题,因此问题是相同的:),即web浏览器将多个空格显示为单个空格。要正确显示它,请在HTML中使用
标记,并在SO中使用code标记。@Krishtian82,我想将此字符串保存在文件中。当您要在构建网页时查看PHP的实际输出时,请始终查看页面源代码。
str_replace('-', '&nbsp;', "*A-----*B-----");
str_replace('–', '&nbsp;', $str);
str_replace('–', '&nbsp;', $str);