Php str_replace()不';I don’我不能取代每一个西方人
我意识到str_replace()有一个奇怪的问题,它似乎不能用$replace替换$search的每一次出现,即使我没有指定$count变量。。。 我的代码 以及输出:Php str_replace()不';I don’我不能取代每一个西方人,php,str-replace,Php,Str Replace,我意识到str_replace()有一个奇怪的问题,它似乎不能用$replace替换$search的每一次出现,即使我没有指定$count变量。。。 我的代码 以及输出: head_title_array Stay & play golf packages Mytitle stay_& play_golf_packages 为什么呢?我希望$Mytitle的价值为“住宿、打球、高尔夫”套餐。 这是怎么回事 感谢您的帮助 那些不是空格。尝试替换和0xA0
head_title_array Stay & play golf packages
Mytitle stay_& play_golf_packages
为什么呢?我希望$Mytitle的价值为“住宿、打球、高尔夫”套餐。
这是怎么回事
感谢您的帮助 那些不是空格。尝试替换
和0xA0。字符串中可能有
可能的解决方案是使用preg\u replace
preg_replace('/\p{Zs}/u', '_', $your_string);
将您的代码分成各个步骤,并确保您实际上在传递您认为自己是什么。现在,通过将解码权传递给替换,你隐藏了很多东西;它会起作用的。。。实际上“$head\u title\u array['title']”中的值是多少。是的,谢谢!成功了!但是你能解释一下吗。我使用reg exp不是很方便,我想知道\p、{Zs}和/u代表什么。。。?谢谢@cerr
/u
表示unicode,正如您在我的答案\p{Zs}
中的链接中所看到的那样,表示任何空白。因此,它可以翻译为unicode字符串中的任何空格
preg_replace('/\p{Zs}/u', '_', $your_string);