首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP使用urldecode和regex

PHP使用urldecode和regex
EN

Stack Overflow用户
提问于 2012-04-05 17:49:46
回答 3查看 420关注 0票数 0

我正在尝试使用这行代码来接受用空格替换为'%20‘的URL变量,但它还必须通过正则表达式

代码语言:javascript
复制
$type=urldecode(ereg_replace("[^a-zA-Z0-9%]+", "", @$_REQUEST['type']));

结果只是删除了%20,而不是替换为空格,例如JohnDoe而不是John Doe,来自John%20Doe

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-05 17:55:45

您的订单有误,请注意ereg_replace已折旧。preg_replace是更好的选择

试一试

代码语言:javascript
复制
 $type  = ereg_replace("[^a-zA-Z0-9%]+", "", urldecode(@$_REQUEST['type']));

更好的方法

代码语言:javascript
复制
$type = @$_REQUEST['type'] ; 
$type = urldecode($type);
$type = str_replace(" ","",$type) ;

谢谢

:)

票数 1
EN

Stack Overflow用户

发布于 2012-04-05 17:52:50

如果您只是想用%20替换空格,那么可以使用:

代码语言:javascript
复制
str_replace(" ", "%20", $_REQUEST['type']);

这里不需要使用正则表达式。

票数 0
EN

Stack Overflow用户

发布于 2012-04-05 17:55:22

$type = str_replace("%20", "", @$_REQUEST["type"]);应该可以工作,并将所有%20替换为"“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10026335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档