首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用PHP创建来自$_GET的单词数组

使用PHP创建来自$_GET的单词数组
EN

Stack Overflow用户
提问于 2015-02-02 14:51:47
回答 6查看 1.1K关注 0票数 0

我在php中使用using ()有困难。我想从$_GET超级全局数组中生成一个字符串数组。

网址将是:

example/myproject.php?keywords=this+is+an+example

我想要一个关键字数组,所以应该是这样的:

代码语言:javascript
运行
复制
myArray(6) = { [0]=> string(4) "this"
               [1]=> string(2) "is"
               [2]=> string(2) "an"
               [3]=> string(7) "example" }

这是我的密码:

代码语言:javascript
运行
复制
$stringVals = explode("+",($_GET['keywords']));
var_dump($stringVals);

这是输出:

代码语言:javascript
运行
复制
array(1) { [0]=> string(30) "this is an example of a string" }

一个有效的例子:

代码语言:javascript
运行
复制
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
var_dump($pieces);

这方面的产出:

代码语言:javascript
运行
复制
array(6) { [0]=> string(6) "piece1" [1]=> string(6) "piece2" [2]=>
string(6) "piece3" [3]=> string(6) "piece4" [4]=> string(6) "piece5"
[5]=> string(6) "piece6" } 

我要$_GET那样的话。

EN

回答 6

Stack Overflow用户

发布于 2015-02-02 14:54:52

你看到的"+“符号实际上只是一个编码的空格。因此,您可以使用一个空格来平分它。

代码语言:javascript
运行
复制
explode(' ', $_GET['keywords']);

如果你要把它放到数据库里,一定要消毒它。

票数 3
EN

Stack Overflow用户

发布于 2015-02-02 14:54:39

实际上,您可以简单地使用:

代码语言:javascript
运行
复制
explode(" ", $_GET['string'])

url中的+符号实际上是一个空格,而不是加号:- )这是因为url中不允许空格(url不能有空格),所以它实际上被转换为加号。

票数 2
EN

Stack Overflow用户

发布于 2015-02-02 14:54:45

在正常的GET请求中,URL中的+将被web服务器转换回空间,因此您应该在' '上爆炸。

代码语言:javascript
运行
复制
$stringVars = explode(' ', $_GET['keywords']);

有关为什么会出现这种情况的解释,请参见https://stackoverflow.com/a/2678602/1331451

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

https://stackoverflow.com/questions/28280373

复制
相关文章

相似问题

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