php - 使用 PHP 语言将 URL 中的所有空格和特殊符号替换为破折号

标签 php

PHP中空格和破折号只与破折号一起出现时如何替换?

例如下面是我的网址

http://kjd.case.150/1 BHK+Balcony- 700+ sqft. spacious apartmetn Bandra Wes

在此我想用 PHP 中的破折号替换所有特殊字符。在 URL 中,“阳台”之后已经有一个破折号。如果我用特殊字符替换破折号,那么它会变成两个破折号,因为 URL 中已经有一个破折号,我只想要 1 个破折号。

最佳答案

我会说你可能想要其他方式。不是“空格”,而是每个非字母数字字符。 因为可以有其他字符,在 URl 中是不允许的(例如,+ 号,用作空格替换)

所以,从自由格式的文本中创建一个有效的 url

$url = preg_replace("![^a-z0-9]+!i", "-", $url);

关于php - 使用 PHP 语言将 URL 中的所有空格和特殊符号替换为破折号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2627523/

相关文章:

php - 如何设置 Simple_HTML_DOM 输出的样式

php - 对于 Web 应用程序,将多个页面上的嵌套讨论分开的最佳方法是什么?

php - 如果数据库列为空 symfony 2,则过滤数组

php-google-spreadsheet-client getSpreadsheets 返回空数组

php - mysql 导入 45MB sql 需要很长时间

javascript - Java 或任何其他语言中类似于 JavaScript 对象的数据结构的正确/首选名称是什么?

PHP查询日期排序多个查询结果

php - 如何在 PHP 中读取 iTunes XML 文件

PHP - 函数内的函数。是好是坏?

php - 如何使用 jQuery 数据表插件实现这种复杂的搜索?