我在php中使用using ()有困难。我想从$_GET超级全局数组中生成一个字符串数组。
网址将是:
example/myproject.php?keywords=this+is+an+example
我想要一个关键字数组,所以应该是这样的:
myArray(6) = { [0]=> string(4) "this"
[1]=> string(2) "is"
[2]=> string(2) "an"
[3]=> string(7) "example" }这是我的密码:
$stringVals = explode("+",($_GET['keywords']));
var_dump($stringVals);这是输出:
array(1) { [0]=> string(30) "this is an example of a string" }一个有效的例子:
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
var_dump($pieces);这方面的产出:
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那样的话。
发布于 2015-02-02 14:54:52
你看到的"+“符号实际上只是一个编码的空格。因此,您可以使用一个空格来平分它。
explode(' ', $_GET['keywords']);如果你要把它放到数据库里,一定要消毒它。
发布于 2015-02-02 14:54:39
实际上,您可以简单地使用:
explode(" ", $_GET['string'])url中的+符号实际上是一个空格,而不是加号:- )这是因为url中不允许空格(url不能有空格),所以它实际上被转换为加号。
发布于 2015-02-02 14:54:45
在正常的GET请求中,URL中的+将被web服务器转换回空间,因此您应该在' '上爆炸。
$stringVars = explode(' ', $_GET['keywords']);有关为什么会出现这种情况的解释,请参见https://stackoverflow.com/a/2678602/1331451。
https://stackoverflow.com/questions/28280373
复制相似问题