在我的网站上,用户可以在名为"描述"的字段中输入文本。我可以通过执行查询获得输入的任何文本,并将其作为$description
返回。我最终希望使用此信息来构建URL。如果用户输入","我遇到了问题。在部分文本中。例如,我们假设用户输入了"test description, test description"
。
$description
将返回:"test%20description,%20test%20description"
运行urlencode($description)
会导致:"test+description%2C+test+description"
这适用于"test+description"
部分,但不适用于%2C
。最终我要问的是,我怎样才能返回:"test+description,+test+description"
答案 0 :(得分:3)
好吧,urlencode将逗号字符编码为十六进制表示法中的%2C,这是您无法更改的内容: http://www.obkb.com/dcljr/charstxt.html
如果你不想编码,我猜你应该编码所有逗号除外:
str_replace('%2C', ',', urlencode($description));